
VB6かUWSCにて、フォーカスを移さずにクリックさせる方法がありましたら教えてください。
ネットで拾ってくるクリックをしてくれるフリーソフト(例えばGlobalShortcutHelper)の中には、
クリックをした後にそのクリックされたプログラム(たとえばブラウザなど)に
フォーカスが移らないものがあります。
そのようなプログラムを組む方法がありましたら教えてください。
擬似的に元のカーソル座標へ戻るようにプログラムしてみましたが
プログラム間の切り替えが明らかに発生しており、望むような結果にはなりませんでした。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
まず、UWSC では不可能です。
VB6 ではできないことは無いような気がしますが、相当しんどいです。
このような要件のサンプルプログラムは、ほとんど C++ ですので、C++ を読んでVB6に翻訳する技術力があれば、可能です。……最初から C++ で作ったほうが早そうな気がしますが。
技術的には、以下の API で実現できます。しかし、この API を VB6 から呼び出すのは大変です。
PostMessage(h, WM_LBUTTONDOWN, 0, MakeLParam(p.X, p.Y));
この回答への補足
VB6にて以下のように作ってみました。
FormにCommandボタンを貼り付けた状態です。
コマンドボタンをクリックするとフォームの右上座標の下にある
ウィンドウのハンドルを取得して、その座標をクリックさせる・・・
というつもりで作ったのですが、うまく動きません。
ハンドルは数字でちゃんと取得できています。
座標も取得できています。
クリック(DOWN後にUP)がされないです。
よろしければ、アドバイスをください。
=================================
Option Explicit
Private Declare Function WindowFromPoint Lib "user32" (ByVal xPoint As Long, ByVal yPoint As Long) As Long
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 WM_LBUTTONDOWN = &H201
Private Const WM_LBUTTONUP = &H202
Private Sub Command1_Click()
Dim hTargetWnd As Long
Dim lParam As Long
Dim lx As Long
Dim ly As Long
lx = Me.Left / 15
ly = Me.Top / 15
hTargetWnd = WindowFromPoint(lx - 1, ly - 1)
lParam = (ly * &H10000) + lx
Call SendMessage(hTargetWnd, WM_LBUTTONDOWN, 0&, lParam)
Call SendMessage(hTargetWnd, WM_LBUTTONUP, 0&, lParam)
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ノートパソコン PCのshift+右クリックについて 2 2022/08/22 08:52
- Windows 10 拡張子.tibxの開き方 1 2023/06/30 13:01
- Windows 10 Windows PC 「スタート」の表示 1 2022/05/14 14:27
- Windows 8 動画の再生とタイトルの変更方法を教えてください。 3 2022/08/01 14:51
- Windows 10 覚えのないアイコンが釘付けされた 3 2022/04/26 19:47
- PowerPoint(パワーポイント) パワーポイントのアニメーションについて 4 2023/06/14 16:25
- Visual Basic(VBA) Excel vbaで別ブックのコマンドボタンをクリック 2 2022/05/08 14:37
- その他(IT・Webサービス) ANDROIDタブレットでZOOMのテストサイトを開いてもテストが始まりません https://ww 1 2023/08/26 16:31
- Yahoo!メール メール内の添付URLが開けなくなってしまいました 5 2023/01/02 21:01
- Windows 10 windows11 update の「更新の再開」について初歩的な質問なのですが 1 2022/10/19 00:57
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
あるプログラムのコマンドライ...
-
Excelで4096点以上のFFTの方法
-
読み込み中にアクセス違反が発...
-
レポート提出で困っています
-
Excelに埋め込んだVBAのプログ...
-
VB.NETのことで困っています。
-
Vba UserFormを前面に出す方法...
-
PICマイコンのコピー(クローン...
-
VBAでユーザーフォームが自動的...
-
未使用の変数を一括検索する方法
-
OS入ってる機器のソフト・アプ...
-
VBAにてメール作成した際、一部...
-
バッチ、vbs等でのソフトウェア...
-
銃を発砲するならともかく、日...
-
プログラムの勉強のおすすめは
-
C言語でのaccess violationに...
-
C言語で実行時間を指定して終了...
-
EXCEL VBA WEEKDAY関数
-
javaで特定の文字のカウントを...
-
ドロップダウンリストの文字を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
あるプログラムのコマンドライ...
-
OS入ってる機器のソフト・アプ...
-
VBAにてメール作成した際、一部...
-
読み込み中にアクセス違反が発...
-
Excelで4096点以上のFFTの方法
-
XnViewにwebpを「いつも開く」...
-
ドロップダウンリストの文字を...
-
PICマイコンのコピー(クローン...
-
「Outlookが他のプログラムによ...
-
Vba UserFormを前面に出す方法...
-
VBAでユーザーフォームが自動的...
-
未使用の変数を一括検索する方法
-
UWSCで指定のフォルダを開きたい。
-
Excelに埋め込んだVBAのプログ...
-
自動クエリとはどういうもので...
-
モジュール、アプリケーション...
-
画像を読み込むのと取り込むの...
-
main関数を先頭に置くデメリット
-
エクセルVBA 検索時に除外を設...
-
WORD印刷できるがEXCE...
おすすめ情報