ToolbarのdropdownMenuをクリックなしで
コードから表示させることは可能でしょうか?
可能な場合はその方法をお教え下さい。
宜しくお願い致します。
やはり不可能なのでしょうか・・・
他の方法があるかも知れないけど一応。
※サンプルにはtoolbarとコマンドボタンが必要です。
Option Explicit
Private Declare Function GetDlgItem Lib "user32" _
(ByVal hDlg As Long, _
ByVal nIDDlgItem As Long _
) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hWnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
ByVal lParam As Long _
) As Long
Private Sub Command1_Click()
Dim hWnd As Long
hWnd = GetDlgItem(Toolbar1.hWnd, 0)
'ボタンサイズ、数が変更になるとxpos, yposが変わるのでうまく計算式で求めること。
Call SendMessage(hWnd, &H201, 1, &HF0021)
Call SendMessage(hWnd, &H202, 0, &HF0020)
End Sub
Private Sub Form_Load()
Toolbar1.Buttons.Add , , "Test"
Toolbar1.Buttons(1).Style = tbrDropdown
Toolbar1.Buttons(1).ButtonMenus.Add , , 1
Toolbar1.Buttons(1).ButtonMenus.Add , , 2
Toolbar1.Buttons(1).ButtonMenus.Add , , 3
Toolbar1.Buttons(1).ButtonMenus.Add , , 4
End Sub
ツイート | ![]() |