投稿日 | : 2003/12/25(Thu) 15:11 |
投稿者 | : 魔界の仮面弁士 |
Eメール | : |
URL | : |
タイトル | : Re: メニューについて |
> メニューエディタのリストを動的に作成することはできるのでしょうか?
Menuコントロールを、「コントロール配列」にすれば可能です。
例えば、
[ファイル(&F)] … mnuFile
├[開く(&O)] … mnuFOpen
├[閉じる(&C)] … mnuFClose
└[-] … mnuFRecent
というメニューを作っておくとします。
この時、mnuFRecentの「表示」のチェックを外しておき、
かつ、「インデックス」に 0 と書いておけば、以下のようにして
メニューの内容を動的に編集できます。
Private Sub Command1_Click()
mnuFRecent(0).Visible = True
Load mnuFRecent(1)
mnuFRecent(1).Caption = "README.TXT"
mnuFRecent(1).Visible = True
Load mnuFRecent(2)
mnuFRecent(2).Caption = "SAMPLE.DOC"
mnuFRecent(2).Visible = True
End Sub
ただし、サブメニューを動的に作成する事はできません。(VB.NETなら可能ですけれども)
もし、サブメニュー項目を持たせたい場合は、APIでメニューを生成する事になるでしょう。