- サマリ: モードレスダイアログのサンプルで
- 環境: Basic
- 状態: 解決
- 投稿者: ishinob?
- 投稿日: 2011-11-18 (金) 11:10:17
質問 
Dialogの例にありますモードレスダイアログのサンプルmodelessdialog-2.odtですが、内容をちょっと変更してボタンの位置を下方へ移動しました。コードは34、35行目になります。
obtn = CreateControl("Button",110,130,80,35,_
Array("DefaultButton","Label"),Array(True,"btn"))
この130を160とかにするとボタンの下半分くらいが見えなくなります。
なんかタイトルバーの幅分だけ表示範囲が上にズレているようです。意味がよくわかりませんが、27行目のoFrame.setComponent(oCont,Null)をはずすとボタンが見えるようになります。
27行目は必要ですか?よろしくお願いします。
回答 
- なくてもいいと思います。用途によりますが、ダイアログエディタで作成したダイアログを setVisible(True) で表示させて execute せずに利用するのが一番簡単な方法です。この方法で表示したダイアログはウィンドウのバツボタンで閉じられませんが、com.sun.star.awt.XTopWindowListener を利用して閉じることが出来ます。例を書いたと思ったらなかったので書きます。OOoBasic/Dialog/Example28 に作成しました。 -- はにゃ?
- 解決です。ありがとうございました。 でもExsample28が例外エラーで動作しません。 -- ishinob
- 何の例外か書かれていませんが、多分ダイアログに配置したコントロール名やダイアログ URL が間違っているんだと思います。 -- はにゃ?
- すみません。できました。btnOkのkが大文字のkでした。これでモードレスダイアログの作成が楽になります。ありがとうございました。 -- ishinob
感想,コメント,メモ 