![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.1ベストアンサー
- 回答日時:
VBだけでやるなら フラグを使ってMouseDownイベントなどでCtrlが押されているかどうかを判断しておくといった手法だと思います
WinAPIを使っていいのであれば GetKeyStatus辺りでチャックでしょう
フラグの場合
Dim bCtrl as Boolean
Sub Form_DblClick()
if bClrl then
MsgBox "Ctrlも一緒でした"
end if
End Sub
Sub Form_MouseDown( b as integer, s as integer, x as Single, y as single)
if s and vbCtrlMask then
bCtrl = True
else
bCtrl = False
end if
End Sub
WinAPIならば
Private Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
Private Const VK_CONTROL = &H11
Private Sub Form_DblClick()
If GetKeyState(VK_CONTROL) Then
MsgBox "Ctrlも一緒だよ"
End If
End Sub
といった具合でしょう
ありがとうございます。
投稿した後に自己解決してしまいました。
APIを使用しないのでredfox63さんの前者とほぼ同じです。
Public dblclk As Integer
Private Sub Form_DblClick()
dblclk = 1
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
If dblclk = 1 Then
If Shift = vbCtrlMask Then
'Ctrlを押しながらダブルクリックした場合の処理
Else
'Ctrlを押さずにダブルクリックした場合の処理
End If
End If
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(パソコン・周辺機器) PCの操作中に画面がフリーズしましたマウスを動かしても反応しないし「Ctrl」キーと「Alt」キーと 2 2022/04/17 10:09
- その他(IT・Webサービス) AutoHotKeyで、キーボードにマウスの右クリックを割り当てられる? 1 2023/03/30 00:23
- その他(コンピューター・テクノロジー) 画面がおかしい 3 2023/03/26 07:50
- その他(IT・Webサービス) Google日本語入力の操作方法 一度確定した後の訂正方法 1 2023/06/17 16:03
- Visual Basic(VBA) VBA ダブルクリックしたときにctrlキーが押されているか知りたいのですが。 1 2023/06/30 22:42
- Word(ワード) ワードに貼ってあるURLが開かなくて困っています. Ctrl」キーを押しながら右クリックしても全く開 4 2022/04/30 22:40
- デスクトップパソコン Windows11でスクショする方法がわかりません。 調べましたが、どうもWindowsキーがあるキ 8 2022/06/05 05:37
- Excel(エクセル) エクセルのショートカットの別のキーへ割当。Ctrl+CをCtrl+1へ変更など 3 2022/11/10 00:03
- マウス・キーボード キーボード設定で困っています。長文です。 2 2022/12/10 12:44
- Windows 7 ショートカットキー 応用編 どういうの主に使いますか? 2 2022/12/28 23:46
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
VBA ダブルクリックしたときにctrlキーが押されているか知りたいのですが。
Visual Basic(VBA)
-
Ctrlキーが押されたことの検出
Excel(エクセル)
-
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
-
4
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
5
エクセルVBAで選択状態を解除のしかた
Excel(エクセル)
-
6
XL:BeforeDoubleClickが動かない
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
今更、VBAでRPA、キーボード操...
-
document.titleでブラウザに表...
-
漫画の新人賞の投稿で 「送信す...
-
C# Enterキーの動作について
-
EXCEL2010でセルが編集中かを判...
-
Javascriptの電卓を作る課題に...
-
submitボタンにvalue属性の値で...
-
ボタンを押すと、テキストエリ...
-
HTMLボタンの文字色を変え...
-
Media Player のスクリーンショ...
-
PHPからWindowsログインユーザ...
-
VBAでHTTPログイン
-
Accessの画面更新を一時的に停...
-
【ASP.NET】 GroupBoxコントロ...
-
勝手にログアウトされてしまい...
-
オートマトンNFAからDFAへの変換
-
VB.netでボリュームレベルメー...
-
DVDの中身が表示されません。
-
SUBMITボタンを表示させないでS...
-
コネクション・セッション・ト...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
DataGridViewのチェックボック...
-
VBAで一時中断したプログラムの...
-
c# 文字列の最後から1文字削除...
-
Eclipseでクリーンが出来ない
-
グリッドビューでのチェックボ...
-
JSPでメッセージボックスを表示...
-
EXCEL2010でセルが編集中かを判...
-
ブラウザの×ボタン(閉じるボタ...
-
VBのこのコードの意味を教えて...
-
最大化ボタンと最小化ボタンを...
-
VC++ MFC CListCtrlで、ボタン...
-
Fancyboxのiframe内に閉じるボタン
-
CheckBoxをボタン形式にして押...
-
エクセルにカウンターを設置したい
-
【C#】 : WindowsProgramming ...
-
SPREADでカーソルの位置を1行目...
-
メール添付されたPDFファイルが...
-
Spread.NETの行削除について
-
初期状態に戻す方法
-
C# Enterキーの動作について
おすすめ情報