ab.com コミュニティ https://www.activebasic.com/forum/ |
|
メニュー コマンドの説明をステータス バーに表示する https://www.activebasic.com/forum/viewtopic.php?t=383 |
ページ 1 / 1 |
作成者: | Toshi [ 2005年10月10日(月) 20:55 ] |
記事の件名: | メニュー コマンドの説明をステータス バーに表示する |
RAD ツールで作成したメニューのコマンドを選択した時に、ステータス バーに任意の文字列を表示させます。 タイトル バーを右クリックした時のメニューでも同じことが出来ます。 MainWndProc の部分を↓この様に置き換えてください。 ・ステータス バーのハンドルは hStatWnd です。 ・メニューのハンドルは、この場合メニューを RAD ツールで "MainMenu" という名前で作成した為 hMenu_MainMenu となっていますが、勿論任意です。 ・IDM_*** の部分はメニュー エディタで決定した ID を使用してください。 ・SC_*** の部分は ID を変更する必要はありません。 ・下の方にある SendMessage API の第 3 引数の SBT_POPOUT は任意のスタイルにすることが出来ます。 コード: '----------------------------------------------------------------------------- ' ウィンドウメッセージを処理するためのコールバック関数 Function MainWndProc(hWnd As DWord, dwMsg As DWord, wParam As DWord, lParam As DWord) As DWord ' TODO: この位置にウィンドウメッセージを処理するためのコードを記述します。 Dim MenuMes As BytePtr If dwMsg=WM_MENUSELECT Then If HIWORD(wParam)=&HFFFF And lParam=NULL Then SendMessage(hStatWnd,SB_SIMPLE,FALSE,0) Else SendMessage(hStatWnd,SB_SIMPLE,TRUE,NULL) If lParam=hMenu_MainMenu Then Select Case LOWORD(wParam) Case 0 MenuMes="ファイル" Case 1 MenuMes="ヘルプ" End Select Else Select Case LOWORD(wParam) Case IDM_NEW MenuMes="新規作成" Case IDM_OPEN MenuMes="開く" Case IDM_SAVE MenuMes="上書き保存" Case IDM_SAVEAS MenuMes="名前を付けて保存" Case IDM_EXIT MenuMes="終了" Case IDM_ABOUT MenuMes="バージョン情報" Case SC_CLOSE MenuMes="閉じる" Case SC_MAXIMIZE MenuMes="最大化" Case SC_MINIMIZE MenuMes="最小化" Case SC_RESTORE MenuMes="元のサイズに戻す" Case SC_MOVE MenuMes="移動" Case SC_SIZE MenuMes="サイズ変更" Case Else MenuMes="" End Select End If SendMessage(hStatWnd,SB_SETTEXT,255 Or SBT_POPOUT,MenuMes) End If End If ' イベントプロシージャの呼び出しを行います。 MainWndProc=EventCall_MainWnd(hWnd,dwMsg,wParam,lParam) End Function |
ページ 1 / 1 | 全ての表示時間は UTC+09:00 です |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |