他のボタンをクリック状態にしたいのです – プログラミング – Home

他のボタンをクリック状態にしたいのです
 
通知
すべてクリア

他のボタンをクリック状態にしたいのです


まゆ
 まゆ
(@まゆ)
ゲスト
結合: 25年前
投稿: 3
Topic starter  

.NETを使用しています。
はじめての書き込みです。よろしくお願いします。
今、Button1とButton2があるとします。
マウスでButton1をクリックしたときに、Button2もクリックされて
いる状態としたいのですが、方法がわかりません。

Private Sub Button1_Click(...) Handles Button1.Click
      Button1_Click(...)  ←???
End Sub

ボタンの見た目についても、Button2もクリックされている状態とし
て見せたいのですが、どなたか方法をお知りの方はいませんか?
どうぞ、よろしくお願いします。
以上です。


引用解決済
トピックタグ
Kazuki
 Kazuki
(@Kazuki)
ゲスト
結合: 22年前
投稿: 41
 

Button1とButton2の両方を同時に見た目上クリックしたように
見せたいってことですか…
見た目もクリックさせるのは私にはわかりませんが
button2.PerformClick()みたいにすればクリックの処理を
呼び出すことは可能です


返信引用
kara
 kara
(@kara)
ゲスト
結合: 21年前
投稿: 2
 

見た目をクリックさせるように見せるには
APIのSendMessageを使用してボタンに対しBM_SETSTATEを
送ることにより実現できます

実装する場合は
--------------------------------------------------------------------
Private Declare Function SendMessage Lib user32 Alias SendMessageA (ByVal
hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const BM_SETSTATE = &HF3

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As
Single, Y As Single)
SendMessage Command2.hwnd, BM_SETSTATE, 1, 0
End Sub

Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As
Single, Y As Single)
If Button = vbLeftButton Then
SendMessage Command2.hwnd, BM_SETSTATE, 1, 0
End If
End Sub

Private Sub Command1_MouseUp(Button As Integer, Shift As Integer, X As Single,
Y As Single)
SendMessage Command2.hwnd, BM_SETSTATE, 0, 0
End Sub
---------------------------------------------------------------------------
このようにします

ただしこれではボタンを押した状態で
マウスをボタンから離した場合に、よろしくない動きになるかもしれません
そのあたりは自分で考えてみてください

では


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました