ひまわりユーザー プログラム掲示板 バックアップ
注意
ひまわりのススメ  □ ひまわり本家Home  □ 新着記事  □ 新規投稿  □ SEARCH  □ 参考プログラム集
ツリー表示

MESSAGE マウスイベント分岐サンプル改良版 /高松祐史 (02/06/06(Thu) 18:39) [963]


親記事 / 返信無し
NO.963  マウスイベント分岐サンプル改良版
□投稿者/ 高松祐史 -(2002/06/06(Thu) 18:39:52)
□U R L/
{---プログラム掲示板投稿フォーム---
【ソフト名】マウスイベント分岐サンプル改良版 (バージョン 1.95)
【作 成 者】高松祐史 (連絡先:tyuhshi@muse.ocn.ne.jp)
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.50から
【転  載】可(転載条件:ご自由に)
【改変運用】半可半不可(ご自由に)
【ひまわり本体への梱包】可
【実行時に利用作成するファイル】無
【コメント】
Runaway さんのプログラムを改良をしたものです。
---投稿フォームここまで---}


*DLLの設定
「USER32」の、「DWORD GetMenu(DWORD)」を、「?」の、「メニュー取得」として、DLLを利用。   ※メルマガno.015の「ポップアップメニュー」(mokaさん作)を参考に作成
「USER32」の、「DWORD GetSubMenu(DWORD,DWORD)」を、「?,?」の、「サブメニュー取得」として、DLLを利用。
「USER32」の、「DWORD TrackPopupMenu(DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD)」を、
「?,?,?,?,?,?,?」の、「メニューE表示」として、DLLを利用。   //「メニューE表示」のところで、ポップアップさせたい親メニューを選択する。あとは、『*ノートの作成』の、最後の行も、統一しておくこと。


*メニューEの作成
メニューEを、メニュー作成。
その、テキストは、「編集(&E)」。

メニューEに、元に戻すを、メニュー追加。
その、テキストは、「元に戻す(&U)」
その、ショートカットキーを、「Ctrl+Z」に、設定。
その、イベントは、(母艦に、『+{F10}U』を、キー送信。)   '・・・右クリック経由[Shift+F10]のキー送信(ちょっとちらつく)けど、他の部品でも使えて便利。

メニューEに、やり直すを、メニュー追加。
その、テキストは、「やり直す(&R)」
その、ショートカットキーを、「Ctrl+Y」に、設定。      '・・・「Ctrl+A」は、「すべて選択」で使いたかったので、「Ctrl+Y」に変更。でも、最初からショートカットキーが指定されていると、ここでの「ショートカットの設定」は無視されるみたい。
その、イベントは、(母艦に、『+{F10}R』を、キー送信。)   

メニューEに、区切りE1を、メニュー追加。
その、テキストは、「-」。

メニューEに、切り取りを、メニュー追加。
その、テキストは、「切り取り(&X)」
その、ショートカットキーを、「Ctrl+X」に、設定。
その、イベントは、(母艦に、『+{F10}T』を、キー送信。)

メニューEに、コピーを、メニュー追加。
その、テキストは、「コピー(&C)」。
その、ショートカットキーを、「Ctrl+C」に、設定。
その、イベントは、(母艦に、『+{F10}C』を、キー送信。)

メニューEに、貼り付けを、メニュー追加。
その、テキストは、「貼り付け(&P)」。
その、ショートカットキーを、「Ctrl+V」に、設定。
その、イベントは、(母艦に、『+{F10}P』を、キー送信。)


メニューEに、区切りE2を、メニュー追加。
その、テキストは、「-」。

メニューEに、すべて選択を、メニュー追加。
その、テキストは、「すべて選択(&A)」
その、ショートカットキーを、「Ctrl+A」に、設定。
その、イベントは、(母艦に、『+{F10}A』を、キー送信。)   '・・・直接「Ctrl+A」を、押しても動かないけど、ポップアップメニューからはOK。


メニューEに、削除を、メニュー追加。
その、テキストは、「削除(&D)」。
その、ショートカットキーを、「Del」に、設定。
その、イベントは、(母艦に、『+{F10}D』を、キー送信。)

メニューEに、区切りE3を、メニュー追加。
その、テキストは、「-」。


メニューEに、マークジャンプを、メニュー追加。
その、テキストは、「マークジャンプ(&Z)」。
その、イベントは、(母艦に、『+{F10}Z』を、キー送信。)


メニューEに、Box貼り付けを、メニュー追加。
その、テキストは、「Box貼り付け(&B)」。
その、ショートカットキーを、「Ctrl+B」に、設定。
その、イベントは、(母艦に、『+{F10}B』を、キー送信。)

メニューEに、区切りE4を、メニュー追加。
その、テキストは、「-」。


メニューEに、定型文メニューを、メニュー追加。
  定型文メニューに、日付と時間メニューを、メニュー追加。
   その、イベントは、ノートの、選択文字列は、「{今日}({曜日(今日)}) {今}」

  定型文メニューに、定型文1メニューを、メニュー追加。
   その、テキストは、「aaa@bbb.ccc」。
   その、イベントは、定型文挿入。
  定型文メニューに、定型文2メニューを、メニュー追加。
   その、テキストは、「http://aaa.bbb/ccc.html
   その、イベントは、定型文挿入。


メニューEに、区切りE5を、メニュー追加。
その、テキストは、「-」。


メニューEに、今日の日付を、メニュー追加。
その、ショートカットキーを、「」に、設定。
その、イベントは、(ノートの、選択文字列は、「{今日}({曜日(今日)})\n」)


メニューEに、区切りE6を、メニュー追加。
その、テキストは、「-」。

メニューEに、右クリックメニューを、メニュー追加。
その、テキストは、「右クリックメニュー」。
その、ショートカットキーを、「F10」に、設定。
その、イベントは、(母艦に、『+{F10}』を、キー送信。)


*メニューOの作成
メニューOを、メニュー作成。
その、テキストは、「オプション(&O)」。

メニューOに、ノートの設定を、メニュー追加。      ※質問BBS[2167] 「Tエディタ設定のサンプル」 (SWinXさん作)より使わせてもらいました。
その、イベントは、(ノートの、Tエディタ設定。)

メニューOに、ノートの設定セーブを、メニュー追加。
その、イベントは、(
   ダイアログ初期値=「TEditor.ini」      //普通に設定すると、INIファイル見えないんだよね〜。でも、これで安心!
   ダイアログキャンセルの値=「キャンセル♪」
   「設定ファイル|*.ini」の、書込ファイル選択。
   もし、それ=ダイアログキャンセルの値ならば、戻る。
   ノートを、それへ、Tエディタ設定を保存。
   戻る。
)

メニューOに、ノートの設定ロードを、メニュー追加。
その、イベントは、(
   ダイアログ初期値=「TEditor.ini」
   ダイアログキャンセルの値=「キャンセル♪」
   「設定ファイル|*.ini」の、読込ファイル選択。
   もし、それ=ダイアログキャンセルの値ならば、戻る。
   ノートを、それから、Tエディタ設定を読込。
   戻る。
)


*メニューハンドルの取得
(母艦の、ハンドル)の、メニュー取得。   //メニューバーのハンドル取得
'それ、0の、サブメニュー取得。
それ、1の、サブメニュー取得。   //一番左の親メニューのハンドルが0だから、2番目の親メニューは1になる。
メニューハンドル=それ。


*ノートの作成
ノートを、Tエディタとして、作成。
 その、サイズは、(0,26,(母艦の、幅),(母艦の、高さ))
 その、マウス押した時は、(
  もし、押された特殊キー<>「Middle」ならば、待機。   //右クリックなら「Right」、左クリックなら「Left」、「Middle」でホイールクリック。
  X=(母艦の、X)+(Tエディタの、X)+マウスX+2。   //2=ウィンドウ枠の幅
  Y=(母艦の、Y)+(Tエディタの、Y)+マウスY+40。   //40=ウィンドウ枠の高さ(2)+タイトルバーの高さ(19)+メニューバーの高さ(19)
  メニューハンドル,2,X,Y,0,(母艦の、ハンドル)に,0、メニューE表示。   //文末の「メニューE表示」は、『*DLLの設定』で、設定したものにする。
) 

*Tエディタの設定(ひまわりエディタバージョン)
TEditor_himawari=『[ノート]
hima_c=109
hima_d0=545046300B54456469746F7250726F700005436F6C6F720707636C5768697465
hima_d1=1043617265742E4175746F437572736F72091043617265742E4175746F496E64
hima_d2=656E74091743617265742E4261636B5370616365556E496E64656E74091B4361
hima_d3=7265742E437572736F72732E44656661756C74437572736F7207076372494265
hima_d4=616D1B43617265742E437572736F72732E4472616753656C437572736F720706
hima_d5=6372447261671F43617265742E437572736F72732E4472616753656C436F7079
hima_d6=437572736F72070463724E6F1943617265742E437572736F72732E496E53656C
hima_d7=437572736F720709637244656661756C741E43617265742E437572736F72732E
hima_d8=4C6566744D617267696E437572736F72070463724E6F1D43617265742E437572
hima_d9=736F72732E546F704D617267696E437572736F720709637244656661756C740F
hima_d10=43617265742E467265654361726574080D43617265742E46726565526F77090B
hima_d11=43617265742E496E546162080F43617265742E4B656570436172657408104361
hima_d12=7265742E4C6F636B5363726F6C6C080E43617265742E4E6578744C696E650915
hima_d13=43617265742E507265765370616365496E64656E74090F43617265742E526F77
hima_d14=53656C656374091143617265742E53656C447261674D6F6465070B646D417574
hima_d15=6F6D617469630D43617265742E53656C4D6F7665090D43617265742E536F6674
hima_d16=546162080B43617265742E5374796C650709637344656661756C740F43617265
hima_d17=742E546162496E64656E74091343617265742E5461625370616365436F756E74
hima_d18=02040C466F6E742E43686172736574071053484946544A49535F434841525345
hima_d19=540A466F6E742E436F6C6F720707636C426C61636B0B466F6E742E4865696768
hima_d20=7402ED09466F6E742E4E616D65060846697865645379730A466F6E742E537479
hima_d21=6C650B00084869745374796C650708687353656C65637413496D616765626172
hima_d22=2E44696769745769647468020713496D6167656261722E4C6566744D61726769
hima_d23=6E020112496D6167656261722E4D61726B5769647468020014496D6167656261
hima_d24=722E52696768744D617267696E020010496D6167656261722E56697369626C65
hima_d25=090F4C6566746261722E426B436F6C6F720708636C53696C7665720D4C656674
hima_d26=6261722E436F6C6F720707636C426C61636B0E4C6566746261722E436F6C756D
hima_d27=6E02010C4C6566746261722E4564676509124C6566746261722E4C6566744D61
hima_d28=7267696E0205134C6566746261722E52696768744D617267696E0201124C6566
hima_d29=746261722E53686F774E756D62657209164C6566746261722E53686F774E756D
hima_d30=6265724D6F646507056E6D526F770F4C6566746261722E56697369626C650910
hima_d31=4C6566746261722E5A65726F4261736508104C6566746261722E5A65726F4C65
hima_d32=616408104D617267696E2E43686172616374657202000B4D617267696E2E4C65
hima_d33=6674020A0B4D617267696E2E4C696E6502020A4D617267696E2E546F70020213
hima_d34=4D61726B732E456F664D61726B2E436F6C6F720706636C47726179154D61726B
hima_d35=732E456F664D61726B2E56697369626C6508134D61726B732E5265744D61726B
hima_d36=2E436F6C6F720706636C47726179154D61726B732E5265744D61726B2E566973
hima_d37=69626C6509144D61726B732E577261704D61726B2E436F6C6F720706636C4772
hima_d38=6179164D61726B732E577261704D61726B2E56697369626C6508144D61726B73
hima_d39=2E486964654D61726B2E436F6C6F720706636C47726179164D61726B732E4869
hima_d40=64654D61726B2E56697369626C6508154D61726B732E556E6465726C696E652E
hima_d41=436F6C6F720706636C47726179174D61726B732E556E6465726C696E652E5669
hima_d42=7369626C65081752657365727665576F72644C6973742E537472696E67730114
hima_d43=03990000EFBC8A000D52756C65722E426B436F6C6F720708636C53696C766572
hima_d44=0B52756C65722E436F6C6F720707636C426C61636B0A52756C65722E45646765
hima_d45=091052756C65722E476175676552616E676502080F52756C65722E4D61726B43
hima_d46=6F6C6F720707636C426C61636B0D52756C65722E56697369626C65090A536372
hima_d47=6F6C6C4261727307067373426F74681553706565642E43617265745665727469
hima_d48=63616C416302021653706565642E496E6974427261636B65747346756C6C0817
hima_d49=53706565642E50616765566572746963616C52616E676502021953706565642E
hima_d50=50616765566572746963616C52616E6765416302020D566965772E427261636B
hima_d51=6574730E01114974656D436F6C6F722E426B436F6C6F720706636C4E6F6E650F
hima_d52=4974656D436F6C6F722E436F6C6F720708636C4D61726F6F6E0F4974656D436F
hima_d53=6C6F722E5374796C650B000B4C656674427261636B657406017B0C5269676874
hima_d54=427261636B657406017D0001114974656D436F6C6F722E426B436F6C6F720706
hima_d55=636C4E6F6E650F4974656D436F6C6F722E436F6C6F720706636C4E6176790F49
hima_d56=74656D436F6C6F722E5374796C650B000B4C656674427261636B657412010000
hima_d57=000C300C5269676874427261636B657412019900000D300001114974656D436F
hima_d58=6C6F722E426B436F6C6F720706636C4E6F6E650F4974656D436F6C6F722E436F
hima_d59=6C6F720706636C4E6176790F4974656D436F6C6F722E5374796C650B000B4C65
hima_d60=6674427261636B657412019900000E300C5269676874427261636B6574120100
hima_d61=00000F300001114974656D436F6C6F722E426B436F6C6F720706636C4E6F6E65
hima_d62=0F4974656D436F6C6F722E436F6C6F720708636C4D61726F6F6E0F4974656D43
hima_d63=6F6C6F722E5374796C650B000B4C656674427261636B657412019900005BFF0C
hima_d64=5269676874427261636B657412019900005DFF000017566965772E436F6C6F72
hima_d65=732E416E6B2E426B436F6C6F720706636C4E6F6E6515566965772E436F6C6F72
hima_d66=732E416E6B2E436F6C6F720706636C4E6F6E6515566965772E436F6C6F72732E
hima_d67=416E6B2E5374796C650B001B566965772E436F6C6F72732E436F6D6D656E742E
hima_d68=426B436F6C6F720706636C4E6F6E6519566965772E436F6C6F72732E436F6D6D
hima_d69=656E742E436F6C6F720708636C4D61726F6F6E19566965772E436F6C6F72732E
hima_d70=436F6D6D656E742E5374796C650B0018566965772E436F6C6F72732E44424353
hima_d71=2E426B436F6C6F720706636C4E6F6E6516566965772E436F6C6F72732E444243
hima_d72=532E436F6C6F720706636C4E6F6E6516566965772E436F6C6F72732E44424353
hima_d73=2E5374796C650B0017566965772E436F6C6F72732E4869742E426B436F6C6F72
hima_d74=0706636C4E6F6E6515566965772E436F6C6F72732E4869742E436F6C6F720706
hima_d75=636C4E6F6E6515566965772E436F6C6F72732E4869742E5374796C650B001756
hima_d76=6965772E436F6C6F72732E496E742E426B436F6C6F720706636C4E6F6E651556
hima_d77=6965772E436F6C6F72732E496E742E436F6C6F720707636C477265656E155669
hima_d78=65772E436F6C6F72732E496E742E5374796C650B0018566965772E436F6C6F72
hima_d79=732E4D61696C2E426B436F6C6F720706636C4E6F6E6516566965772E436F6C6F
hima_d80=72732E4D61696C2E436F6C6F720707636C4F6C69766516566965772E436F6C6F
hima_d81=72732E4D61696C2E5374796C650B001B566965772E436F6C6F72732E52657365
hima_d82=7276652E426B436F6C6F720706636C4E6F6E6519566965772E436F6C6F72732E
hima_d83=526573657276652E436F6C6F720705636C52656419566965772E436F6C6F7273
hima_d84=2E526573657276652E5374796C650B066673426F6C64001A566965772E436F6C
hima_d85=6F72732E53656C6563742E426B436F6C6F720706636C4E61767918566965772E
hima_d86=436F6C6F72732E53656C6563742E436F6C6F720707636C576869746518566965
hima_d87=772E436F6C6F72732E53656C6563742E5374796C650B0017566965772E436F6C
hima_d88=6F72732E5374722E426B436F6C6F720706636C4E6F6E6515566965772E436F6C
hima_d89=6F72732E5374722E436F6C6F720706636C4E61767915566965772E436F6C6F72
hima_d90=732E5374722E5374796C650B001A566965772E436F6C6F72732E53796D626F6C
hima_d91=2E426B436F6C6F720706636C4E6F6E6518566965772E436F6C6F72732E53796D
hima_d92=626F6C2E436F6C6F720706636C426C756518566965772E436F6C6F72732E5379
hima_d93=6D626F6C2E5374796C650B0017566965772E436F6C6F72732E55726C2E426B43
hima_d94=6F6C6F720706636C4E6F6E6515566965772E436F6C6F72732E55726C2E436F6C
hima_d95=6F720707636C4F6C69766515566965772E436F6C6F72732E55726C2E5374796C
hima_d96=650B000E566965772E436F6D6D656E74657206012710566965772E436F6E7472
hima_d97=6F6C436F64650809566965772E4D61696C080E566965772E51756F746174696F
hima_d98=6E06012208566965772E55726C0808576F7264577261700818577261704F7074
hima_d99=696F6E2E466F6C6C6F775265744D61726B081C577261704F7074696F6E2E466F
hima_d100=6C6C6F7750756E6374756174696F6E0814577261704F7074696F6E2E466F6C6C
hima_d101=6F775374721224990000013002300CFF0EFFFB301FFF01FF9B309C30FD30FE30
hima_d102=9D309E300530FC3009FF3DFF5DFF0D300F30210029002C002E003A003B003F00
hima_d103=5D007D0061FF63FF64FF65FF70FF9EFF9FFF12577261704F7074696F6E2E4C65
hima_d104=6164696E670812577261704F7074696F6E2E4C656164537472120999000008FF
hima_d105=3BFF5BFF0C300E3028005B007B0062FF19577261704F7074696F6E2E50756E63
hima_d106=74756174696F6E5374721208990000013002300CFF0EFF2C002E0061FF64FF14
hima_d107=577261704F7074696F6E2E576F7264427265616B0813577261704F7074696F6E
hima_d108=2E577261704279746502500000』。

*Tエディタの設定取りこみ
(母艦のパス&『\』&TEditor.ini)が、存在するか。'・・・ノートの設定を、最初から読み込む。
もし、それが、はいならば、(
   ノートを、「TEditor.ini」から、Tエディタ設定を読込。)
違えば、(
   それは、TEditor_himawari。
   (母艦のパス&『\』&『TEditor_himawari.ini』)へ、書く。
   ノートを、「TEditor_himawari.ini」から、Tエディタ設定を読込。)。

*母艦の作成
母艦の、背景色は、ウィンドウ色。
母艦の、変更した時は、ノートの、サイズは、(0,26,(母艦の、幅),(母艦の、高さ))
母艦浮上。
待機。


*〓〓待機〓〓
待機。


*定型文挿入
ノートの、選択文字列は、イベントオブジェクトの、テキスト。
戻る。




- Child Tree -