探検


AutoHotkey スレッド part28

■ このスレッドは過去ログ倉庫に格納されています
1名無しさん@お腹いっぱい。 (ワッチョイ aef9-dJm7)
垢版 |
2020/04/03(金) 18:35:06.00ID:/YRSlUCD0
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512

■配布元
http://ahkscript.org/download/

■前スレ
AutoHotkey スレッド part27
http://egg.5ch.net/test/read.cgi/software/1555770773/

■日本語解説等
AutoHotkey Wik
http://ahkwiki.net
AutoHotkeyを流行らせるページ(ミラー)
http://ahk.xrea.jp/ (不調時は http://hdd.s300.xrea.com/ahk/ )
AutoHotkeyJp(過去ログdatあり)
http://sites.google.com/site/autohotkeyjp/
Autohotkey日本語ヘルプ(chmファイル)
http://www6.atwiki.jp/eamat/
Autohotkey専用うpろだ
http://ux.getuploader.com/autohotkeyl/
簡易スクリプト掲示板
http://pastebin.com/

■派生版
IronAhk (.NET製、クロスプラットフォーム)
https://github.com/polyethene/IronAHK
AutoHotkey.dll (真のマルチスレッド対応など, AHKLの派生)
http://www.autohotkey.com/board/topic/39588-autohotkeydll/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2020/07/26(日) 19:45:26.93ID:lfc7Fo4v0
「スクリプトを常駐状態にする。」ってこんな簡単な文章がなぜ理解できないのかって話なのに
なんでそこから日本語ならどんな分野のどんな難しい文章もわかるのか?って話に飛んでんのかな?
その発想自体が日本語の理解力足りないってことじゃねえの
2020/07/26(日) 19:50:44.21ID:b9LQTrtD0
ん〜だから、知識によって理解が変わるってことを大袈裟に言っているだけで
252 とか 254みたいな批判めいた内容言うこともないだろって話。
#Persistentがどうのとか中身は興味ないから
2020/07/26(日) 19:58:57.50ID:lfc7Fo4v0
>>260
つまり「常駐」って言葉の意味が分からないとかか?
だったらそういう質問の仕方をしないと相手に伝わる訳もないよな?
そもそも「常駐」の意味だって調べりゃ良いだけだし
ろくに調べもせずに丸投げ質問しておいて、挙句「当然調査済み」とか言ってる馬鹿は批判されて当然のこと
2020/07/26(日) 20:00:38.99ID:lfc7Fo4v0
>>260
それと>>252のどこが批判めいてるんだ?
どう見てもごく普通のアドバイスだろ
それに対して>>253みたいなこと言えばそりゃ批判されるわ
2020/07/26(日) 22:31:44.50ID:S9oLQUza0
理解力じゃなくて尋ね方の問題でしょ
このスレは横着者に厳しいので漫然とした聞き方でお薦めを得ようとしてもだめ
理解が及んでないと思う箇所をピンポイントで掘り下げて聞いた方がいいよ
2020/07/26(日) 22:37:52.93ID:ACsjU6Jp0
要するにこれ

教えて君五大要素
1. 読まない
2. 調べない
3. 試さない
4. 理解力が足りない
5. 人を利用することしか頭にない
265名無しさん@お腹いっぱい。 (ワッチョイ 0976-Rmjr)
垢版 |
2020/07/28(火) 04:19:25.54ID:TZ11IB3u0
>>251です
質問の範囲が曖昧でしたね。では、特に以下のことについてお聞きします。
>>250
・その他、皆さんの設定(常駐スクリプト)

#UsehookやSendMode, Inputが理解できていませんが、これは共にフックが関係しているためです。
フックについての理解が>>250で正しければ、それで解決します。
それから、よければ皆さんの常駐スクリプトの頭を見たいなと。
2020/07/28(火) 21:52:09.24ID:j4zhZCSu0
フック使用時は SetWindowsHookEx でフックチェーンにコールバック関数が登録され、
何らかのキーが入力されたとき、登録されたコールバック関数が呼ばれます
なので'OS側は入力されたことに気づかない'は誤りです

>また、以下の認識はあっていますか?
>UseHook = InstallKeybdHook + InstallMouseHook
あっていません

#UseHook, On
F5::
MsgBox % A_PriorKey ; A_PriorKey を使用するにはフックが必要
Return

これを実行すると、キーボードの履歴は取得できますが、マウスの履歴は取得出来ません
#InstallMouseHook をコードに加えるとマウスの履歴も取得出来ます
267名無しさん@お腹いっぱい。 (ワッチョイ 0176-QWST)
垢版 |
2020/07/30(木) 01:09:12.14ID:fMNXqak+0
テンキーでホットストリングを使用したいのですが
どのように指定したらよいのかわかりません。

「-」を2回押して「〇〇○○」の文字入力

:*?Z:--::
Clipboard = ○○○○
Send, ^v
Return

上記で一応やりたいことは出来るのですが
「-」2回入力を「NumpadSub」にしたいのですが

:*?Z:{NumpadSub 2}::
:*?Z:{NumpadSub}{NumpadSub}::
としてもうまく機能しません。
教えていただけると助かります。
2020/07/30(木) 04:58:02.48ID:bNezzCEK0
>>267
ホットストリングは入力された文字を置き換えるだけだから
テンキーだろうがそうじゃなかろうが - は同じ文字なのでテンキーか否かの区別は無い
テンキーの - のみ置き換えたいならホットキーで2回押し判定するこったな
2020/07/31(金) 08:42:13.59ID:g2I7hRAB0
>>267
サンプルコード集 - AutoHotkey Wiki
http://ahkwiki.net/SampleCodes
ここの「1つのキーに3種類以上の動作割り当て」を使うといい

余談だけど、自分はよく使う機能なんで関数にしている
んで、「Switch」が使えると最近知ってスクリプトを書き換えたが同じ変数の羅列が無くなってスッキリするね
270名無しさん@お腹いっぱい。 (ワッチョイ bd76-UJyh)
垢版 |
2020/07/31(金) 17:18:12.37ID:0oLnTWbF0
>>269
外野ですがPastebinしてもらえるとすごい助かります
2020/08/01(土) 10:56:06.64ID:wwTG8TO50
>>268
>>269
参考になりました!長押しいいですね!
早速使います!
2020/08/02(日) 20:02:58.56ID:1OIburwk0
ホイールスクロールを左右キー(←→)に割り当てているのですが、元々のスクロールも残っているようで、左右キーと同時にスクロールもしてしまいます。
1秒間に何十回も行う動作なのでこういった挙動になってしまうのでしょうか?なんとか割り当てた左右キーを動作させている時は元々のスクロールは動かないように出来ないでしょうか?
宜しくお願い致します。
2020/08/02(日) 20:08:47.09ID:1OIburwk0
申し訳有りません 解決しました
2020/08/02(日) 20:17:53.03ID:81CoHYtN0
~Left:: とかにしてなけりゃ普通は抑制されるはずだけど?
キーリピート殺さないとホイールがチャタってるみたいな状態にはなるかも知れんが

よくあるのが関係ない部分でreturn入れてて挙動不審になってるやつ
最小コードで動作検証してみて
それでも動かないならコード貼って再質問どうぞ
2020/08/02(日) 20:19:50.56ID:u9ugTsmM0
>>272
すり抜け対策なら
SetKeyDelayのPressDurationを10〜50msくらいに設定
2020/08/02(日) 20:51:32.80ID:1OIburwk0
>>274
すいませんまさに~Left::です これだとスクロールが出ちゃうんでしょうか?
~Lshift & WheelUp::Send,{Left}
~Lshift & WheelDown::Send,{Right}
2020/08/02(日) 20:53:24.65ID:zAbkO+PE0
>>276
当たり前だろ・・・
基本中の基本くらいちゃんと調べろよ
2020/08/02(日) 21:35:11.08ID:81CoHYtN0
ああLeftにホイール割当じゃなくてホイールにLeft割り当てなのか
~についてはヘルプをよく読もう
まあ理解したところでコンビネーション使う限りは避けられないだろうけど

~Lshift::からのInputコマンドか
#if getkeystat("Lshift") からの WheelUp::Left あたりかね
2020/08/02(日) 21:41:30.34ID:AFdKD/8M0
>>278
コンビネーションとかgetkeystatとか使わずに修飾キー使えばいいだけだろ
このレベルだとどうせ修飾キーの記号すら分かってないだけだろうし
2020/08/02(日) 22:19:40.60ID:81CoHYtN0
そういやそうだね
ややこしくしてすまんかった
281名無しさん@お腹いっぱい。 (オッペケ Sr05-pQu/)
垢版 |
2020/08/03(月) 15:55:03.34ID:sfF7RDEPr
Alt+Sキーを押している間、中央ボタンを押している状態にしたいのですが上手く機能しません。
!s::
MouseClick,MIDDLE

!s::MButton

!s::
Send,{MButton}
を試したのですが動きません
ご教授お願いしたいです。
2020/08/03(月) 16:30:58.17ID:ddoVblCqM
・キーリピート対策
・2行以上にまたがるホットキーラベルはreturnが必要
あたり?
2020/08/03(月) 16:33:22.00ID:OV16fhwwa
これを参考に
https://autohotkey.com/board/topic/59307-how-to-make-a-key-press-repeatedly-while-its-down/

$!s::
While ( GetKeyState("s","P") && GetKeyState("Alt","P"))
以下略

とかではどうか
2020/08/03(月) 18:46:54.16ID:EtZ/qIcU0
>>281
alt使ってるせいでMButtonの挙動が変わるな
そういうの面倒なときは無変換キーなどを修飾替わりに使った方がいい
285名無しさん@お腹いっぱい。 (オッペケ Sr05-pQu/)
垢版 |
2020/08/04(火) 02:10:47.63ID:pvHcveX7r
>>284
altキー以外ならいけるようになるものなんでしょうか?
winキーで試したところ駄目でした
ctrlはctrl+sと競合してしまいますし…
2020/08/04(火) 03:06:46.14ID:6qMp3tYz0
>>285
修飾キーはやめとけってこと
無変換と言ってるのになんで言われたこと試さないんだ
2020/08/04(火) 08:11:04.70ID:GuCHOeBV0
AutoHotkeyを使うなら英語キーボードへのこだわりを捨てた方が幸せになれるよ。
288名無しさん@お腹いっぱい。 (ワッチョイ 795a-xE3T)
垢版 |
2020/08/04(火) 08:27:11.36ID:+LKh5lCi0
>>285
Alt+Sも気づいていないだけで、何かと被ってない?
メニューバーにファイル(F)、編集(E)とかってある中に(S)使ってるのが、いくつかあると思うよ
289名無しさん@お腹いっぱい。 (オッペケ Sr05-pQu/)
垢版 |
2020/08/04(火) 15:49:03.70ID:pvHcveX7r
>>286
USキーボードなので無変換キーがありませんので…
2020/08/04(火) 17:54:00.91ID:Mz7J8e+xa
Mbuttonで試せるものを思いつかなかったので
LButtonでテスト
マウスをスクロールバーの三角矢印に置いて
sとdを同時押しでスクロール
これはうまく動いた

https://pastebin.com/hGTxhZC6
2020/08/04(火) 21:51:34.86ID:YeWR0s7Z0
メモ
管理者権限のウインドウを動かすための最新パッチを落としたら動かなかったので保存してあった旧パッチをネットにバックアップしておく
これでタスクマネージャも動かせる
https://www.axfc.net/u/4025809.zip
2020/08/04(火) 21:53:04.79ID:YeWR0s7Z0
失敗こっちで
https://www.axfc.net/u/4025810.zip
2020/08/06(木) 00:12:56.90ID:eOY3feteM
altとwasdキーで矢印キーの役割を持たせたくて!w::Upみたいに書くとaltキーが入力されたままになって結果的にaltと矢印キーの状態になっちゃうんですけどこれの対処法みたいな物はありますか?
2020/08/06(木) 00:23:34.78ID:OeT3kirv0
>>293
リマップを使わずにSendを使いな
実際にリマップがどのような動作するのかwikiをよく読んで
リマップはホットキーに変換される
2020/08/06(木) 11:58:26.53ID:RbEH3NuY0
実行ファイル名だけでRunできるかどうかを確かめる方法って
PATHに含まれるパスの1つずつに実行ファイル名を付け足してFileExistで確認するしかないですかね?
もうちょっとスマートな方法ないかなと
2020/08/06(木) 13:05:35.07ID:kGGdSQS1M
>>295
Windowsのwhereコマンドでファイルを探す
https://www.atmarkit.co.jp/ait/articles/0904/10/news115.html

なおAHKでstdout読むにはひと工夫必要
https://poimono.exblog.jp/25278401/
2020/08/06(木) 13:17:06.72ID:wvUo9/wMa
てか、なんで直接Runで確かめたら駄目なんだ
パスが通ってれば実行できるし、そうでなければ実行できない
フルパスを知る意味はあるのか?
2020/08/06(木) 14:15:55.25ID:JEPjWfkUM
RunWaitで実行して、ErrorLevel判定でだめなん?
2020/08/07(金) 23:24:35.46ID:/SyKKu4K0
>>281ですが、やはりUSキーでは特定のキーを押している時に中央ボタンを教えている状態にする…というのは厳しいものでしょうか?
>>283も試し、>>290さんのものもそのまま使ってみたのですが駄目でした(SとD同時押しで左クリック)
2020/08/07(金) 23:42:38.23ID:UYjaWn7P0
>>299
修飾キー使うのがダメなんだから無変換が無いならAppsKeyとかを修飾替わりにすれば
とにかく修飾キーを使わない方法自分の環境の中で考えろよ
2020/08/08(土) 00:56:59.60ID:d1t6RuBp0
まずホットキー割り当て関係なしに Send,{MButton} は動作した?
とりあえずF1あたりに割り付けて試してみては?

あとさ押してる間中って,{MButton down} {Mbutton up} は考慮せんでいいの?
>281や>290ではキー押してる間 MButtonカチカチ押し直してることになるけど
2020/08/08(土) 01:17:59.28ID:VqId6oIB0
>>301

F12::
Send,{MButton}
Return
で試してみたのですがそもそも中央クリックとして反応しませんね…。
MButtonでは駄目なんですかね 調べてみます
2020/08/08(土) 01:50:59.21ID:KA47kwuX0
>>302
だからdownとupをちゃんと書けって
F12押したら押してる間はMbuttonも押したままにしたいんだろ?
そしてF12離したらMbuttonも離す
そういう書き方しなよ
2020/08/08(土) 01:52:31.77ID:KA47kwuX0
そもそも何のソフトで検証してんだ
普通のユニバーサルスクロールなら
>>302のスクリプトでも動作するけど
305名無しさん@お腹いっぱい。 (ワッチョイ 595a-e++8)
垢版 |
2020/08/08(土) 02:08:24.01ID:rnkNRuHB0
>>302
>反応しませんね
ってのは目視で言ってる?それともAutoHotkeyのログにも反映されてないってこと?
そのあたりが明確じゃないと。
ホイールクリックはされてるんじゃないの?と自分も思うけど
どうにかしたいのは何かのゲームなの?
306名無しさん@お腹いっぱい。 (オッペケ Sr5d-h0Us)
垢版 |
2020/08/11(火) 16:57:50.21ID:cZVnzQoFr
全てのsendの後に300msの間隔を入れたいのですが 、sendkeyの間全てにディレイを入れるにはどうすればいいのでしょうか?
2020/08/11(火) 17:31:03.23ID:SgS7rHNJ0
>>306
SetKeyDelay
2020/08/11(火) 21:39:37.53ID:TLfH+B9q0
無変換を空打ちの時は無変換のままで他のキーと組み合わせた時にctrlキーになるみたいなスクリプトって作成可能ですか?vk1D & a::send, ^{a}みたいなのを永遠と続けていくしかないんですかね
2020/08/11(火) 22:44:38.04ID:j6KwnO/20
>>308
こんな感じで行けたけどどうでしょう
#If GetKeyState("sc07B","P")
a::
b::
c::
d::
MsgBox, %A_ThisHotkey%
return
#If
2020/08/12(水) 11:54:00.49ID:2Yw6Zztj0
>>309
無変換キーをctrlにしたいから6行目をsend,{Blind}^{%A_ThisHotkey%}に書き換えたんですけどshiftキーみたいな修飾キーを同時押しすると反応しません(ctrlとshiftとaをおしてもshiftとaになる)。どうすればいいのでしょうか?
2020/08/13(木) 16:49:16.78ID:XhLEW61l0
SetKeyDelay, は、自分が組んだマクロの前に入れておけばそのマクロだけ動いてくれるものでしょうか?
試した所適応されないのですが、この書き方だと間違っているでしょうか?

;;;googleearthのプロパティ変更
SetKeyDelay, 200
#IfWinActive ahk_class Qt5QWindowToolSaveBits
^n::
send,{Tab}
send,{Tab}
send,{Tab}
send,{Tab}
…以下略


send,{Tab}の間等、全ての間に少しだけ間隔が欲しいです。
SetKeyDelayの数値を20000などに上げてみても速度が変わらなかったので機能していないようなのですが、どこに記述すればいいものでしょうか?
ご教授頂ければと思います。お願いします。
2020/08/13(木) 17:17:21.46ID:LDN6U1Fl0
>>311
全てのホットキーに適用したいならそのスクリプトの一番ド頭に書けばいい
余計なもん一切書かずに↓のみのスクリプト新規に作って実行してみ

SetKeyDelay, 1000
^n::
send,{Tab}
send,{Tab}
send,{Tab}
send,{Tab}
Return

ちなみに^nのみに適用したいなら ^n:: の次の行に書けばいい
2020/08/13(木) 17:20:08.52ID:BcGAhrfM0
>>311
Auto-executeセクション
>>1で説明されてると思う
2020/08/16(日) 18:54:26.89ID:L+IHJT3W0
質問しといて回答貰ってもなんの返事もしない奴って
他人を利用することしか頭に無いんだろうなあ
315名無しさん@お腹いっぱい。 (オッペケ Srf1-K5M0)
垢版 |
2020/08/17(月) 20:54:41.17ID:3mab3Ymer
ウィンドウ切り替えのAlt+Tabを右クリック&ホイールスクロールに割り当てたいんだけど不可能かな?
Alt+tabを押した後、Altはドラッグしたままtabのみクリックをホイールに割り当てないといけないから無理かなさすがに…
316名無しさん@お腹いっぱい。 (オッペケ Srf1-K5M0)
垢版 |
2020/08/17(月) 21:27:15.80ID:3mab3Ymer
すいません alttabmenuを使うのが自分のやりたいことに1番合っているようでした
2020/08/17(月) 21:36:55.69ID:BI+nRFCA0
>>315
それのために「AltTab」「ShiftAltTab」という専用コマンドが用意されてる
ただし右クリックと組み合わせるとコンビネーションキーの仕様で右ドラッグが出来なくなるなど
悪影響が出るので右クリック使うのはお勧めしない
サイドボタン+ホイール上下などと組み合わせた方が良い
318名無しさん@お腹いっぱい。 (オッペケ Sr73-JcCl)
垢版 |
2020/08/19(水) 13:36:13.75ID:A9E1pfBqr
>>317
ありがとう!

それと、SHIFT+ホイールスクロールで水平スクロールが動かないんだけど

; Shift +ホイールで水平スクロール
+ WheelDown :: WheelRight
+ WheelUp :: WheelLeft

これで動くって書いてたけどitunesとかエクスプローラで試しても動かないんだよね…
どこが間違っているんだろう
2020/08/19(水) 14:13:35.98ID:7/g4JpYv0
>>318
sendコマンドでやる方が良いんでない?
単純なsendで駄目なら他のモード試す

(´・ω・`).。oO(リマップは後々面倒なことになりそうだから個人的には使いたくないな…情弱なんで)
2020/08/19(水) 16:18:37.07ID:rbvgmFfQ0
>>318
WheelDownの前後に余計なスペース入れてるからエラー吐く
正しく書けば動くけどエクスプローラーはそもそもWheelLeft/WheelRightのAPIに対応してないので
AHK関係なくチルトホイール付きマウスとかでも水平スクロールは使えない
ソフトごとに対応は異なる

>>319
別にSend使わなくても普通に動く
2020/08/19(水) 23:30:05.97ID:7/g4JpYv0
(;´∀`)おっおぅ
322名無しさん@お腹いっぱい。 (オッペケ Sr73-JcCl)
垢版 |
2020/08/20(木) 13:13:28.93ID:ZEA8sAPvr
>>320
ありがとうございます。
そうだったんですねchromeでのスプレットシートやitunesでも水平スクロールが出来ないのですが、これは水平スクロールをする方法は無いのでしょうか?
2020/08/20(木) 16:53:58.82ID:kXSrpxVO0
>>322
GoogleのスプレッドシートはAHK使わなくても元からShift+ホイール上下で横スク出来るだろ
itunesは使ってないから知らん
そもそも個々のアプリの仕様はそのアプリのスレで聞けよスレチ
2020/08/22(土) 19:14:45.98ID:wV0OjCfD0
alt-ime-ahkというaltキーでIME変換できるスクリプトを使っていたのですが、
ALTキーがロックされてしまうバグで使い物になりません…。
他にalt単体でIME切り替えできるようにする方法はないでしょうか?
2020/08/22(土) 19:33:34.31ID:/ojXZb2N0
alt-ime-ahkってそれなりに市民権得てるスプリクトだよね
初心者が単純にできることならわざわざ複雑にしたものが支持を得たりはしないのでは

あとこの手のものはおま環やOSやAutohotkey.exeのアプデによって問題が出てくることのほうが多い
調べもしないで簡単にバグとか言わない
2020/08/22(土) 19:38:18.57ID:h59phsuN0
>>324
alt-ime-ahkとやらをググって試したけどロックなんてされないぞ
バグじゃなくてお前のOS設定とか他スクリプトの干渉とかの問題だろ
2020/08/22(土) 21:27:48.57ID:mFroqLUM0
>>324
メカニカルキーボードスレで次のが紹介されていたよ
https://github.com/t-kouyama/ConvertAndNonConvertEmulator
あと、Keyhacでもできる
2020/08/27(木) 15:47:12.74ID:QHZeYd9S0
Win+Eのホットキーでエクスプローラーがすでに開かれてる場合そのウィンドウをアクティブにして
そうでない時エクスプローラーを開くというスクリプトを作ろうとしたが挫折してる…
#e::
Process, Exist, explorer.exe
if ErrorLevel<>0
WinActivate, ahk_pid %ErrorLevel%
else
Run, "C:\Windows\explorer.exe"
Return
何かアドバイス等ありましたらご教授いただきたく存じます
2020/08/27(木) 16:24:37.79ID:TQwMSHJa0
>>328
プロセスではなくウィンドウクラスで確認する

if WinExist("ahk_class CabinetWClass")
IfWinExist, ahk_class CabinetWClass
2020/08/27(木) 16:33:06.92ID:obuHAsj80
>>328
329が先に答えたので補足になるけど
タスクマネージャーを見れば分かるがエクスプローラー窓を開いてない状態でも
Windows起動した時点でexplorer.exeはずっと常駐しているのでProcess, Existでは
常に「起動してる」という結果しか得られない
2020/08/27(木) 17:11:20.42ID:QHZeYd9S0
>>329
>>330
ちょっと返信遅れちゃったけどアドバイス本当にありがとうございました!
エクスプローラーが常駐してるだなんて知らなかった…
2020/08/27(木) 19:48:18.89ID:Vy3dVpps0
>>331
タスクマネージャーからエクスプローラ終了してみな?
Windowsへの理解が深まるよ
2020/08/27(木) 20:17:14.30ID:cadQeoYy0
代替シェルやファイラーなどを使ってエクスプローラを使わない文化はまだ存在しているのだろうか
2020/08/27(木) 20:45:17.04ID:SZ2UrCzM0
ファイラーは普通にあるでしょ
今でもシェルまで変えられるかは知らんけど
2020/08/27(木) 23:51:15.80ID:Vy3dVpps0
VistaをどうしようもないXPレペルのノートで使ってた頃は少し使ってた>代替シェル
結局当時良さげになってきてたUbuntu10.04に逃げた
2020/08/28(金) 03:05:13.43ID:cZIhkCY40
裏で動いているitunesの曲の再生や停止を書きたかったのですが、
^!Space::Send {Media_Play_Pause}
のように書いても反応しません。
キーボードに付属しているメディアキーでも反応しないのですが、どこかに設定等があるのでしょうか
2020/08/28(金) 04:21:25.80ID:xw+3/nKK0
>>336
そもそもキーボードで反応しないならAHKに関係無くiTunesがメディアキーに対応してないだけじゃね
もしくはキーボード側の設定の可能性もあるがそれもAHK関係無いからスレチ
WMPとかでまず試して動作確認すればいいじゃん

あとはメディアキー使わなくてもほとんどのプレイヤーがスペースキーでPlay/Pauseになってんだろうから
ControlSendでスペースキー送れば良いんじゃね
2020/08/28(金) 15:06:19.33ID:cZIhkCY40
>>337
そうですねすいません。
WMPでメディアキー使っても再生停止出来なかったのでソフトが対応してないのかと思います。ありがとうございます。
2020/08/28(金) 15:54:02.21ID:xw+3/nKK0
>>338
>WMPでメディアキー使っても再生停止出来なかったので

WMPでメディアキー使っても再生できないならソフト側のせいじゃないだろ
論理的な思考力ないのかよ

・If 「WMPではメディアキー反応するけどitunesでは反応しない」→itunesが対応してないだけ
・ElseIf 「WMPでもメディアキー反応しない」→メディアキー自体が何かしらの理由で機能してない

ちなみにWMPや俺が使ってるプレイヤーソフト(AIMP)では>>336のスクリプトも機能してる
2020/08/29(土) 21:32:28.31ID:o6IPlPhZ0NIKU
>>339
WMPがなんらかのせいで対応してない状態になってるっていうことですよ
メディアキーのサービス更新やchrome://flags/#hardware-media-key-handlingだとか色々触ってみたけど結局直らないんでもうソフト側の前でメディアキー死んでるってことなんですよね
ただどれだけ調べても同じような現象は無いし治る方法もないんでもう諦めます
2020/08/30(日) 00:02:54.54ID:Y/S0taCl0
>>340
だからその「なんらかのせいで」というのはお前のPC環境の問題であって
他の人はお前のPCの状態なんて触ったことも無ければ知ったこっちゃないわけ
ましてAHKとはなんの関係も無い問題からスレチ

AHKでやるならControlSendでスペースキー送れば良いだけ
342名無しさん@お腹いっぱい。 (テテンテンテン MM66-yRqa)
垢版 |
2020/08/31(月) 23:25:39.14ID:oOBjBlAHM
いまのウィンドウからみて、タスクバー上で1つ隣のウィンドウをアクティブにする処理をしたいんだけど、
何かいい方法ありませんかね?

↓↓絶対もっとスマートな方法あると思うんだけど、思いつかぬ……

やりたいことは例えば、タスクバーの左から順に
(1)エクスプローラー、(2)Excel、(3)Firefox、(4)Google Chrome、(5)メモ帳
みたいに並んで起動しているときに、(前提として、タスクバーボタンを結合していないものとして)
2番目のExcelがアクティブになっている状態でスクリプトを実行したら、
3案目のFirefoxがアクティブになる感じ。
※元々Firefoxが最小化されているか、裏に回っているかに関わらず、タスクバーの該当アプリを押したときと同じ挙動で前面に来てほしい。
※Excelは単に裏に回るだけで、最小化されたりはしない。(これもタスクバーで別のウィンドウが選択されたときと同じ挙動)

【いま考えている方法】
まず、現在のアクティブウィンドウのIDを取得する。……(A)
Win+1など、Win+数字のショートカットで、タスクバーの該当番目にあるウィンドウがアクティブになることを利用して、
Win+1〜Win+9まで順番にSendして、(A)で取得したIDと同じウィンドウがアクティブになれば、
その次の番号のウィンドウがアクティブになったら処理を終了。

【たくさんの欠点】
・問答無用で左から順にアクティブ化するため、最小化していたウィンドウも通常サイズになってしまう。
・重なり順序も変わってしまう。
・処理に時間がかかる。(Ctrl+Tab的な感覚で行いたい)
・9つまでしか使えない。

どなたか良い手法をご存知でしたら教えてください。
2020/08/31(月) 23:49:04.41ID:iwA0T+ry0
>>342
長文すぎて流し読みしかしてないけど
Alt + Tab
Alt + Shift + Tab
絡めたらどう?
2020/09/01(火) 00:02:03.41ID:CIgJpoRq0
タスクバーの順番なんて気にしたことすらないな
タスク切り替えはAltTabで何も不都合感じたこともない
2020/09/01(火) 02:15:24.50ID:jyT47uKQ0
>>342
ttp://ux.getuploader.com/autohotkeyl/download/72/
2020/09/01(火) 08:25:33.23ID:UhHHrgA3M
>>343
>>344
Alt+Tabだと、アクティブ化した順に切り替えだから
直前のウィンドウならまだしも、4つ5つ前とかになるともう覚えてられないのよね。
タスクバー上の隣なら、常に見えているのでわかりやすいかなって思って。

>>345
ありがとう!
まだ私の環境では動かないのだけれど(ST_AccessibleObjectFromWindowが失敗してる?)、
説明を見るかぎりやりたいことはたぶんこれ。
もうすこしソース読んで頑張ってみる。
2020/09/01(火) 08:48:31.17ID:jyT47uKQ0
>>346
自分の環境(Win7 HP SP1 x64)では、動かなかったので省いたけど
ロダに修正版もあるのでそちらも試してみてください

ttp://ux.getuploader.com/autohotkeyl/search?q=SwitchTask.ahk
2020/09/01(火) 19:35:28.85ID:+mtd3kPjM
>>347
まだ挙動がちょっと変だけど、教えてもらった修正版で動くようになったよ。
ありがとう。
ちなみに環境はWin10 Pro 64bit。

エクスプローラーならエクスプローラーだけ、
Google ChromeならGoogle Chromeだけというように、
複数立ち上がっている同一アプリの中でしか切り替わらなかったり、
切り替わる順番も、タスクバー上の隣ってわけじゃなくて今一つ安定しないものの、
やりたいことに少し近づいた気がする!
ソースいじって確認していくしかないか……
2020/09/01(火) 20:15:10.08ID:bAfqoxH70
自分はよく使うアプリを利用頻度順にPin留めしておいて、そのうち最初の3つを「Win+1〜3」でダイレクトに切り替えてる(他は素直に「Alt+Tab」で選択)
2020/09/03(木) 06:41:44.08ID:vJfgepHe0
入力ボックスの作成でアドバイスお願いいたします

したいこと
入力補助用のメニューをコンボボックス上のキャレット位置に挿入

サンプルコード
ttp://pastebin.com/raw/neGABRrF
2020/09/03(木) 11:00:46.05ID:vJfgepHe0
キャレット位置の監視ならびにクリックすることで一応希望動作になりました
他にアイデアなどありましたら、引き続きお願いいたします

SetTimer, 500ms, 500
500ms:
 X := A_CaretX ? A_CaretX : X
 return

;ComboBox/キャレット位置
GuiControl, Focus, Edit?
MouseClick,, %X%, A_CaretY
Clipboard := "hoge"
Send ^v
2020/09/04(金) 13:00:52.93ID:pmB3eQ1YM
keywaitでキー指定せずどれかのキーが押されるまで待つっていうのはできませんか?
2020/09/04(金) 14:11:22.93ID:WYlJxJA+0
Input でどうぞ
2020/09/05(土) 12:22:11.77ID:k1215Yye0
修飾キーではない3つのキーの組み合わせ(例えば変換キーと無変換キーとKキーみたいな組み合わせ)を使用したい場合はどのようなコマンドを使えばいいのでしょうか?
2020/09/05(土) 12:34:58.21ID:IeDZCFx80
>>354
コンビネーションキーとGetKeyStateの併用
356名無しさん@お腹いっぱい。 (ワッチョイ bf11-th+2)
垢版 |
2020/09/05(土) 14:04:34.58ID:k1215Yye0
>>355
ありがとうございます
2020/09/07(月) 20:42:26.83ID:uheywDGu0
無変換と左クリックでctrlと左クリックの動作にさせたいのですがどのようなスクリプトを書けばよいのでしょうか。
vk1D & LButton::
send,{CtrlDown}
MouseClick, LEFT
send,{CtrlUp}
Return
こういうスクリプトだとドラッグアンドドロップができないんですよね…
2020/09/07(月) 21:02:20.28ID:zmAyLEpT0
>>357
MouseClickも押し下げと離すを分けて書いて
間にKeyWaitを入れてボタンを離したらクリックとCtrlをUpする
2020/09/07(月) 21:09:20.80ID:4I4OQpb80
send, {ctrl down}{Lbutton down}
keywait
send, {ctrl up}{Lbutton up}
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況