「Web出版サイト」ベータ公開

Q&A集[?]

当サイトでのご質問の受付は終了しました

すべてのコンテンツを読み込み専用としたため、回答欄からも投稿できません

Apache OpenOffice/LibreOfficeのご質問はそれぞれのフォーラムへご投稿ください

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:1
昨日:0
総数:2063
現在:3


リストボックスの選択位置をBasicで操作したい

ページOpenOffice.org FAQの登録ページ
投稿者ひつじ
分類
edit/refer
優先順位
edit/refer
状態
edit/refer
カテゴリー
edit/refer
投稿日2010-10-06 18:44:03 (水)
OSWindows XP
依存するページControl_Elements
バージョン
edit/refer

メッセージ

回答ページでは行末に「~」を付加する必要はありません

フォームにリストボックスを設置して、そのリストボックス内の項目を選択する動作をBasicによって操作したいと考えています。

依存するページのリストボックスについて紹介されている中にある「selectItem(Item, SelectMode)」というメソッドが使えればよかったのですが、どうやら存在しないメソッドのようで困っています。

何か解決方法がありましたら教えてください。よろしくお願いします。


selectItemPos?

M.Kamataki (2010-10-07 14:28:17 (木))

サンプルがあると良いのですが、もしかすると依存するページに上げられているリストボックサービスの説明にある「SelectItemsPos (Array of Short)」が使えるかもと思いました。参考:faq/5/248「リストボックスの1番目と2番目が選択できない。」。外していたらゴメンなさい。

それと依存するページは、Basicのダイアログで利用できるコントロールの紹介なので、Baseのフォームで利用できるコントロールとは若干、異なるかもしれないです。

無題

tani (2010-10-07 14:34:32 (木))

試しにSelectItemsPosのサンプルを作ってみましたので添付します。
(一番上のメニューに追加しているダイアログテストからマクロを実行できます。Baseのテーブルだけを参照しており、フォーム機能は使っていませんが、同じような感じでいけるかもしれません。)

フォームでは動かないのかもしれませんね

ひつじ (2010-10-07 16:30:28 (木))

みなさん回答いただきありがとうございます。わざわざサンプルまで上げていただいて恐縮です。

tani さんのサンプルは正常に動いたのですが、私がフォームで同じように使ってみようと思うとうまくいきませんでした。

動かないサンプルを添付してみます。

フォーム上コントロールのモデルでの操作

はにゃ? (2010-10-07 17:20:22 (木))

モデルを介した操作は次のようにします。

oForm = ThisComponent.DrawPage.Forms.getByName("MainForm")
oListbox = oForm.getByName("動物リスト")
oListbox.SelectedItems = Array(1)

モデルではなくコントロールを介して操作したい場合には、次のようにします。この場合、設定しているリスナーに該当するイベントの通知が行われます。それを好まない場合にはモデルを介して行なってください。

oListBoxCtrl = ThisComponent.getCurrentController().getControl(oListBox)
oListBoxCtrl.selectItemPos(1, True)

操作できました

ひつじ (2010-10-08 06:39:20 (金))

はにゃ?さん、いつも的確な回答ありがとうございます。

例として挙げていただいたコードでやりたい操作が可能になりました。

今のところ Openoffice の Basic は適当にいじっているだけでやりたいことが大体できてしまっていたのですが、「モデル」とか「リスナー」あたりはちゃんと勉強しないと使いこなせそうにありませんね。

サンプル

M.Kamataki (2010-10-08 11:10:04 (金))

まとめとして2パターンのサンプルをアップします。

モデルを介したもの。

filefaq6_37sample1.odb

コントロールを介したもの。

filefaq6_37sample2.odb

;; こんな感じであっているかな。

まとめていただきありがとうございます

ひつじ (2010-10-09 07:11:47 (土))

こんなかんじでOKだと思います。また困ったときには質問させていただきますのでよろしくお願いします。

お名前:
題名:


添付ファイル: filefaq6_37sample2.odb 1394件 [詳細] filefaq6_37sample1.odb 1338件 [詳細] filehitsuji_db.odb 668件 [詳細] filehogehoge.odb 662件 [詳細]