投稿日 | : 2005/01/27(Thu) 19:44 |
投稿者 | : ポン助 |
Eメール | : |
URL | : |
タイトル | : Re^4: SetMenuItemInfoについて |
> それよりも、旧スレの回答にあるSetMenuInfo API関数を試した方がいいかも?
既に、解決されているとは思いますが、
SetMenuInfo API関数で、モードレス・メニュー・スタイルに変更する方法です。
この方法の妥当性については、解かりませんが・・・
Option Explicit
Private Type MENUINFO
cbSize As Long
fMask As Long
dwStyle As Long
cyMax As Long
hbrBack As Long
dwContextHelpID As Long
dwMenuData As Long
End Type
Private Const MIM_STYLE As Long = &H10
Private Const MNS_MODELESS As Long = &H40000000
Private Declare Function SetMenuInfo Lib "user32" _
(ByVal hMenu As Long, lpcmi As MENUINFO) As Long
Private Declare Function GetMenu Lib "user32" _
(ByVal hwnd As Long) As Long
Private Sub Command1_Click()
' メニューバーをモードレスに変更する。
Dim hMenu As Long
Dim mi As MENUINFO
hMenu = GetMenu(Me.hwnd)
With mi
.cbSize = Len(mi)
.fMask = MIM_STYLE
.dwStyle = MNS_MODELESS
End With
Call SetMenuInfo(hMenu, mi)
End Sub