AutoHotkey スレッド part30

■ このスレッドは過去ログ倉庫に格納されています
2022/02/07(月) 21:22:19.36ID:eoboeZNM0
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑スレ立てする時は3行にして下さい

■配布元
https://autohotkey.com/download/

■前スレ
AutoHotkey スレッド part29
https://egg.5ch.net/test/read.cgi/software/1620768466/

■日本語解説等
AutoHotkey Wiki
http://ahkwiki.net
AutoHotkeyを流行らせるページ(ミラー)
http://hdd.s300.xrea.com/ahk/
AutoHotkeyJp(過去ログdatあり)
https://sites.google.com/site/autohotkeyjp/
Autohotkey日本語ヘルプ(chmファイル)
https://www6.atwiki.jp/eamat/

■スクリプト投稿
Autohotkey専用うpろだ
https://ux.getuploader.com/autohotkeyl/
簡易スクリプト掲示板
https://pastebin.com/

■その他のテンプレ(5chのURL規制が厳しいのでpastebinに退避しました)
https://pastebin.com/raw/bWipuNmt

次スレは>>950が建てましょう。建てられなかったらレス番指定して頼みましょう
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2022/04/18(月) 10:17:29.70ID:k5/c1f5m0
>>165
>>163だけど、動作検証したらあれだけでは動かずもう一つスクリプト追加で動いたので報告…解決済みかも分からないが一応
原因は「GetVolumeObject()」という関数が存在しないため

追加するのは以下のGetVolumeObject()関数スクリプト
"System Sounds" in Win 10 mixer. - AutoHotkey Community
https://www.autohotkey.com/boards/viewtopic.php?t=61554

長文になって申し訳ないが、まとめると動かすために必要なスクリプトは3つ
1.>>163ページのスクリプト
 Setting the volume of a specific window/application - AutoHotkey Community
 https://www.autohotkey.com/boards/viewtopic.php?t=47888
2.1.のスクリプトに#includeする VA.ahk(1.のスクリプト内にURL記述されている)
 Vista Audio Control Functions - Scripts and Functions - AutoHotkey Community
 https://www.autohotkey.com/board/topic/21984-vista-audio-control-functions/
 の「Download v2.3 for AutoHotkey 1.1」からzipをDL
3.GetVolumeObject()関数スクリプト
 URLは上に記述
2022/04/18(月) 11:19:55.94ID:w3MR3fy50
>>166
ありがとうございます!
動きますねw

ただ、やはり、setWindowVol()ですが、実行すると、
その後に起動する別のAHKスクリプトの音量にも反映されてしまいますね…w
exeを対象に処理してるようなので…。
2022/04/18(月) 14:24:53.15ID:k5/c1f5m0
>>167
ウインドウ指定はexeだけじゃなくタイトルでもウインドウクラスでも色々指定できるでしょ
対象のウインドウなら音量変更(例えば50%)し非対象ウインドウなら音量を元(100%)に戻せばいいだけだと思うが…
2022/04/18(月) 14:31:15.38ID:CPd7iMYs0
>>168
それならもう>>158-160でええやん
自動化さえすれば同じこと
2022/04/18(月) 14:50:42.44ID:w3MR3fy50
>>168


AHKスクリプトをどうやって区別するの?
2022/04/18(月) 16:44:36.19ID:k5/c1f5m0
>>169
俺に言われても…本人じゃないし、PC全体の音量が変わるのが嫌らしい

>>170
>ウインドウ指定はexeだけじゃなくタイトルでもウインドウクラスでも色々指定できる
工夫次第で何ともなるし、本人じゃないからどんなスクリプト書いてるのか知らんし…
2022/04/18(月) 16:56:16.12ID:w3MR3fy50
>>171
工夫次第とは? 
具体的に

どんなスクリプトかは関係ないと思うが…?
2022/04/18(月) 17:04:11.63ID:t4IYQUGd0
>>172
諦めて自動マクロ化しろってことだよ
171もそこまで検証してやる気もないんだから
自動で元の音量に戻ればPC全体だろうがAHK.exeだろうが同じでしょ
同時に他の音を鳴らしてるわけじゃないなら
2022/04/18(月) 17:14:07.10ID:w3MR3fy50
>>173
他の音も鳴る場合があるから問題、
って話なんだが…
2022/04/18(月) 17:21:24.34ID:ZvJIIGUfM
comobjに音量を指定して再生する方法がある
後で調べてurlを書き込む
2022/04/18(月) 18:23:25.89ID:Tmsqj+Wu0
>>174
なら最初に言わないと分からんわ
2022/04/18(月) 18:33:57.94ID:w3MR3fy50
>>176
言ってるんだが… → >>159
2022/04/18(月) 18:35:39.42ID:Tmsqj+Wu0
>>177
同時に鳴らすとは言ってないじゃん
2022/04/18(月) 18:48:02.89ID:k5/c1f5m0
>>172
スマンね舌足らずで…
工夫というかウインドウ指定方法は沢山あるんだから応用して指定すれば良いと言いたかった

スクリプトを区別したいならタイトルを↓にすればいいと思ったが検証してないので違ってたらスマン
スクリプトの名前orフルパス ahk_exe AutoHotkey.exe
これで区別した後はpidなどいろんな情報取得できる(一応>>163のスクリプトはpidを基にして音量調整してる)
2022/04/18(月) 18:56:58.63ID:w3MR3fy50
>>179

それ、やってみましたが、

ちょっと改造してpidを渡して関数実行しても、結局、
その後に実行するAutoHotkeyスクリプトにも音量が反映されてしまいます。
2022/04/18(月) 19:00:59.19ID:EvFeCall0
ワッチョイ 9f
2022/04/18(月) 19:06:14.38ID:k5/c1f5m0
>>180
いい加減スクリプト(部分的で良いけど第三者がすぐ検証できるような)公開してみては?
ここには有識者がたくさんいるから貴重なアドバイスしてくれると思うぞ(オレは素人だからダメ)
2022/04/18(月) 19:19:18.24ID:Tmsqj+Wu0
>>182
同時に鳴らすと言ってんだからお前のやり方でも無理でしょ
検証すらしないでゴチャゴチャ言っても無駄に混乱して長引くだけだし
出来ないことは諦めろでいいんだよ
2022/04/18(月) 19:23:13.08ID:w3MR3fy50
>>182

何を公開?

普通はSoundPlay関数で鳴らすところを、音量を指定して鳴らしたい、
ってだけの話ですが…
2022/04/18(月) 20:41:21.85ID:iipbrppD0
>>157
https://autohotkey.com/board/topic/56987-com-object-reference-autohotkey-v11/page-8
(サンプルにある ComObjConnect(wmp, "wmp_") これは不要)

音量 := 10
wmp.Settings.volume:= 音量
wmp.url := "C:\Windows\Media\Windows Background.wav"

音量などのその他機能について
https://docs.microsoft.com/ja-jp/windows/win32/wmp/settings-object
2022/04/19(火) 00:51:29.34ID:YN2kxtcH0
お前ら…意味不明な草生やしてきた時点で気付けよ
2022/04/19(火) 13:49:12.14ID:TOKnDfGA0
>>185
ありがとうございました。
バッチリできました w

(あきらめないことが重要ですね w)
2022/04/20(水) 15:24:09.96ID:lX3vqCRc0
前スレの >>575 です。
海外のAHKスレで解決してもらえました。

#SingleInstance Force
Return

; Hotkeys to move left/right
*Right::btn_move_click(1)
*Left::btn_move_click(0)

; Btn clicker
btn_move_click(dir) {
Static x_arr := [10, 200, 300, 400, 500, 600, 700, 800] ; x 座標の配列Array of your x coords
, index := 1 ; 現在いる配列のインデックスを追跡するTrack the array index you're at
If (dir) ; If dir 1 (right)
index++ ; インデックスを1つ増加させるIncrement the index by 1
Else index-- ; Elseで1つ減少Else decrement by 1
If (index < x_arr.MinIndex()) ; インデックスが最小未満の場合If index is less than min
index := x_arr.MaxIndex() ; Set to max
Else If (index > x_arr.MaxIndex()) ; インデックスが最大値より大きい場合Else if index greater than max
index := x_arr.MinIndex() ; Set to min
Click, % x_arr[index] " 0" ; x_arrとインデックスを使用してクリックClick using x_arr and index
}
2022/04/20(水) 19:00:48.22ID:PRb9mbH6a
zip版がいつまで経っても1.1.33.10から更新されない・・・
2022/04/20(水) 21:52:02.06ID:se2jhU+w0
7zipなんだからインストーラーから取り出せばいいのに
191名無しさん@お腹いっぱい。 (ワッチョイW 77a1-WnSi)
垢版 |
2022/04/20(水) 23:25:58.55ID:9if64+X90
無変換キーを0.15秒以下押し続けた場合日本語入力ON、0.15秒以上長押し続けた場合は入力モードを切り替えない
ということをやりたく、以下のコードで試してみましたが、長押ししたときでも日本語入力がONになってしまいます。
解決策はないでしょうか?

c07B::
KeyWait,sc07B,T0.15
If (ErrorLevel){
KeyWait,sc07B
return
}else{
IME_SET(1)
KeyWait,sc07B
return
}
2022/04/21(木) 00:01:59.71ID:bpZlbdkm0
>>191
最初のsが抜けてる以外スクリプトは正常
IME側の設定で無変換キーで日本語入力になってんじゃね
193名無しさん@お腹いっぱい。 (ワッチョイW 77a1-WnSi)
垢版 |
2022/04/21(木) 00:46:35.68ID:1BQphNbN0
>>192
IMEの設定を見直してみましたが無変換キーで日本語入力にはしていなかったです。
長押ししても、常にelse以下のスクリプトが実行されているみたいなんですよね…
「key history and script info」で無変換キーを押したときの挙動を見てみると、
無変換キーを長押ししたときにTypeの列に「s」がずらっと並んでるんですが、
画面上部の説明によるとs=Suppressed (blocked)とあってこの辺が関係しているんじゃないかと踏んでいます。
2022/04/21(木) 01:35:04.00ID:bpZlbdkm0
>>193
じゃあ他にもコンビネーションキーとかで無変換使ってんじゃねえの
それだと無変換キーを離した瞬間にキーdown/Upが一瞬で送られるから長押し判定は出来ない
どうしても長押し判定したけりゃ素直に他のキー使った方が良い

~やGetKeyState使って無変換をコンビネーションキーで乗っ取らず、長押し時に何も動作しないなら
一応判定できなくないけどそれなら普通に単押しでキー離したときにIMEオフでいいだろう
2022/04/23(土) 20:40:54.86ID:Bz8Txlil0
・質問ですが、

文字入力の位置(キャレット)の座標って取得できますかね?
IMEの日本語変換時に、候補が表示される位置。

表示してるということは、座標は取得してるってことだけど…
2022/04/23(土) 21:05:30.28ID:v2cifEsx0
もうお前飽きられてるから
2022/04/24(日) 00:42:08.72ID:l2hqPiIg0
ワッチョイ e273
2022/04/24(日) 17:35:09.13ID:xL2RNLzA0
>>196>>197

懲りずにゴミ文を書き込むバカ

バカが…
2022/04/24(日) 20:20:28.67ID:5aNcdmow0
うわぁ〜
2022/04/26(火) 11:07:11.18ID:V+NjxZ3E0
>>146
windowsフック系でもっと良いの見つけたー!
https://www.autohotkey.com/boards/viewtopic.php?t=59149
201名無しさん@お腹いっぱい。 (テテンテンテン MM34-rYrL)
垢版 |
2022/04/27(水) 12:06:24.58ID:U6TBJnbpM
Imeの言語によって動作を変えるスクリプトを作りたいのですが、imeの言語を取得する方法を教えていただけないでしょうか。
2022/04/27(水) 14:07:26.05ID:H7yGNNlu0
>>201
GetKeyboardLayout
2022/05/04(水) 10:43:15.24ID:dZrz/yv+0
右クリック押している間、左右のクリックを押していることにできますか?やり方がわかりません。
2022/05/04(水) 15:00:02.05ID:fYugN+QT0
>>203
できます
初歩的なことなので日本語wiki読んで勉強しましょう
2022/05/07(土) 16:26:54.61ID:tfQ+KE2O0
sleep中に、ホットキーなどを利用してsleepを抜けてsleepの次の行の処理に移行させたいのですが
どうすれば実現できますか?
2022/05/07(土) 19:06:57.06ID:YjLr+NMd0
無理
2022/05/07(土) 22:20:03.91ID:tfQ+KE2O0
>>206
やはり無理やりやるしか無いですよね。。
無理やり組んでみます。

ありがとうございました。
2022/05/07(土) 22:50:29.83ID:v8W1GKyr0
まあ難しいこと考えずに
Suspend
で良いんじゃないのかと
デフォルトはトグルだけどオン/オフ専用にもできるし
2022/05/07(土) 23:11:24.77ID:Ak35QZbY0
こういうことかなと思っていたが違うのか


sleep, 10000 の代わり
 ↓
ループ 100回 {
 ホットキーが押されたか?
  押された:ループ終了
  押されない:ループ続行
 sleep, 100
}
2022/05/07(土) 23:17:27.96ID:rSAxiZWw0
>>205
0.1秒とかの短いSleepをLoopさせて(例えば最大5秒間Sleepさせるなら50回Loop)
任意のキーを押したらBreakすれば良いんじゃね?

最適解かは知らんが試したら出来た
2022/05/07(土) 23:18:10.82ID:rSAxiZWw0
って更新してなかったので209と被ったけど言ってることは大体同じかな
2022/05/07(土) 23:42:58.26ID:ffC+HanO0
pauseとかinputとかやりようは色々
2022/05/08(日) 17:27:53.31ID:x0q5ZCE00
>>212
「次の行の処理に移行させたい」と言ってんだからpauseはダメじゃね?
2022/05/08(日) 17:59:51.11ID:a+vUk7Kj0
SetTimerが順当
215名無しさん@お腹いっぱい。 (ワッチョイW 9f58-awLw)
垢版 |
2022/05/08(日) 22:50:32.18ID:3qFZaAp70
無変換キーを押したときにバックスペース、無変換キー+shiftでdeleteキーに置き換えたくて
以下のように設定したのですが、無変換キーをバックスペースに置き換え出来たのですが
無変換キー+shiftを入力しても反応しないのですが、どこが間違っているか教えてもらえないでしょうか?

vk1D::Send,{Blind}{BS}
vk1D & +::Send,{Blind}{Delete}
2022/05/08(日) 22:54:01.57ID:lvQAVrhk0
>>215
+はセンドするときの修飾
押すときはShift
2022/05/08(日) 23:12:58.02ID:iv2CiQR90
>>215
無変換を先に押すなら
vk1D & Shift::

Shiftを押してから無変換押すなら
+vk1D::
218名無しさん@お腹いっぱい。 (ワッチョイW 9f58-awLw)
垢版 |
2022/05/09(月) 00:24:29.33ID:R5SkmMBC0
>>216、217
出来ました、有り難うございます
219名無しさん@お腹いっぱい。 (アウアウウー Sa31-b50G)
垢版 |
2022/05/16(月) 17:45:28.09ID:eoMO4FlXa
Win+eで選択したファイルを開けるようにしたくて、
~~~~~~~~~
script1.ahk
#e::
run,"script2.ahk"(略)
ExitApp
~~~~~~~~~
script2.ahk
Gui,Add,Button...
...
e::{tab}
Lwin Up,{Enter}
~~~~~~~~~
という感じでWin+eでボタン付きGuiを開き、Winキー押しっぱなしでeキーを任意の回数押して
押したいボタンを選択し、Winキーを離して決定というものを書いたのですが、Guiが出る前にWinキーを離すと一番の項目で決定されず困りました。
そこでGuiができたタイミングでLwinに対してGetKeyState=Uのとき、Send Enterをしようとしましたが、LWinを押したままscript2を開いたため
再度押し込まない限りLWinを押していたとしてもGetKeyStateはUになってしまいます。
解決方法を教えてください。わかりにくい文章ですみません
2022/05/16(月) 17:57:31.32ID:DPy8KSZG0
なんでスクリプト2つに分けてんの?
「Win+eでボタン付きGuiを開き、Winキー押しっぱなしでeキーを任意の回数押して
押したいボタンを選択し、Winキーを離して決定」
これをやりたいだけなら普通に一つで出来そうだけど
2022/05/16(月) 19:53:39.87ID:Nfzhe17V0
>>219
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=45116
2022/05/16(月) 21:45:05.07ID:TBp7HHPr0
>>219
それっぽくはなったけどこれで問題ないかは知らん

#e::
gui,+hwndhGui
gui,add,button,,Button1
gui,add,button,,Button2
gui,add,button,,Button3
hotkey, ifwinactive, ahk_id %hGui%
hotkey, #e, aaa
hotkey, lwin up, bbb
gui,show
Return

aaa(){
send,{tab}
}

bbb(){
ControlGetFocus,f,A
gui,destroy
hotkey, #e, off
hotkey, lwin up, off
msgbox, %f%
}
223名無しさん@お腹いっぱい。 (アウアウウー Sa31-b50G)
垢版 |
2022/05/17(火) 08:29:08.06ID:gLdhZDSoa
>>220
HotKeyをうまく扱えてなかったみたいです

>>222
理想通りの動きをしましたありがとうございます!
質問なのですが以下の2文にはどのような意味合いがあるのでしょうか?
gui,+hwndhGui
hotkey, ifwinactive, ahk_id %hGui%
Guiがある場合のみホットキーを有効にするって感じでしょうか
2022/05/17(火) 11:49:46.85ID:hg2DXVH70
>>223
そういう意図だったけど、そんな必要もなかった
#e::
ifwinactive,ぐい
{
send,{tab}
} else {
gui,add,button,,~
hotkey, lwin up, bbb, on
gui,show,,ぐい
}
Return
225名無しさん@お腹いっぱい。 (ガックシW 06b6-DnZI)
垢版 |
2022/05/23(月) 14:15:30.28ID:5To3snRl6
sc079::
KeyWait,sc079,D
GetKeyState,x,sc079
MsgBox,%x%
return

xが絶対にUになるんですが何故でしょうか
sc079は変換キーなので特殊だったりするんでしょうか
226名無しさん@お腹いっぱい。 (ガックシW 06b6-DnZI)
垢版 |
2022/05/23(月) 14:26:08.81ID:5To3snRl6
vk1CにしたらD出ました。何故でしょう
2022/05/23(月) 14:36:19.44ID:rgDvRxpV0
>>226
GetKeyState,x,sc079,P
ならsc079でもDになる
うちでは"P"を付けなかったらvk1Cでも U になったけど
2022/05/27(金) 05:47:45.01ID:sVgCceyE0
IMEの種類に応じてキーを入れ替えるとか
さすがに無理だろうか
2022/05/29(日) 16:08:40.29ID:/Ymq3DD20NIKU
vkE2sc073::Send,{Blind}nn
この表記だと不正になるのか
2022/05/29(日) 16:14:06.51ID:Lb+YDVVy0NIKU
>>229
数年前のVer.upで仕様が変わったんだよ
日本語wikiとか古い仕様の表記のままなだけで
新参には分かりにくいだろうから直したいけど直せないし
2022/05/30(月) 00:13:17.74ID:4JoJ3jtx0
1.1.27.00 - December 25, 2017

Changes:
The hotkeys ~LWin:: and ~RWin:: no longer suppress the Start Menu. See #MenuMaskKey for details and a workaround.
Added proper validation for vk or sc key names, so names such as "sc01notvalid" are no longer recognized as keys.

Scripts containing hotkeys of the form VKnnSCnnn:: will need to be corrected by removing SCnnn, which was previously ignored.

Help file: Replaced the standard HTML Help Viewer sidebar with the new HTML5 sidebar developed by Ragnar-F.

うっかり見落としてました
2022/06/01(水) 10:38:27.69ID:iUH5FBTg0
任意のウィンドウを右クリックしたときに表示される、元のサイズに戻す・移動・サイズ変更・最小化・最大化、のメニューはPostMessageの指定何番でしょうか?
0x0111と0x0112は反応ありませんでした。
2022/06/01(水) 11:50:45.05ID:7pzt5Yh10
>>232
wikiのWinRestoreやWinMinimizeなどの各Remarksに書いてある
やったつもりで出来ないならそれ以外の問題
2022/06/01(水) 14:44:21.80ID:7QHgzWvr0
このメニューウィンドウにアクセスしたいです
https://i.imgur.com/4PPwUxR.png
2022/06/01(水) 18:36:01.63ID:Uy3j/Ip30
>>234
「アクセスしたい」の意味が分からん
マウスでクリック以外の方法でそのメニューを表示したいって意味か?
それならAlt+Spaceをセンドすりゃ良いだろうが
2022/06/03(金) 13:19:45.26ID:fCCmxBJm0
自己解決しました
管理者権限の問題でした

WM_SYSCOMMAND 0x0112
2022/06/03(金) 13:40:41.19ID:FENqtfwe0
-TrnV
結局何がしたかったんだよコイツ
2022/06/03(金) 15:43:07.13ID:bJSyJ+ZS0
>>237
dc-
で気付け
2022/06/03(金) 15:50:15.69ID:1jsIHpBkd
>>238
dc-だけじゃいくらでも被ってるやつ居るのに何に気づけと?
2022/06/05(日) 21:36:47.95ID:4Zuz2ucf0
1.1.34.03で「WIN+RgUp」でスタートメニューが開いてしまう不具合が、1.1.34.02で治った。
2022/06/05(日) 21:37:10.29ID:4Zuz2ucf0
あ、数字逆だった
2022/06/06(月) 17:09:39.99ID:HU87lGmf00606
1.1.34.03インストールしようとすると
「このアプリはお使いのPCでは実行できません」
てでるんですけどこれは何でしょうか
2022/06/06(月) 18:26:14.50ID:SuuTnndj00606
よくわからんけど
32bitのWindowsが入ってるPCに64bit版のahkを入れようとしてるとか?
2022/06/06(月) 19:32:26.94ID:HU87lGmf00606
>>243
OSは64bitなんですが、デスクトップとノートPCがともにダメでした…
古いバージョンってどこかでダウンロードできるでしょうか
2022/06/06(月) 19:32:36.50ID:yqAz5XX500606
実行ファイルに署名がされてないと、危ないかもしれないからWindowsが止めてくるとかいうやつじゃないの?
2022/06/07(火) 13:50:56.75ID:9GENcw6r0
>>245
昨日ダウンロードしたファイルが壊れてて
今日試したらうまくいきました
お騒がせしました…
2022/06/12(日) 09:16:21.02ID:AOXdN1kk0
頑張って導入した 便利 なんか少しイケメンになった気がする
2022/06/17(金) 16:55:27.89ID:3TlX0LQ30
昨日街中ですれ違ったイケメンは君だったのか!?
2022/06/18(土) 02:21:17.74ID:T23N04FP0
ahkをexe化すると1MBくらいに肥大化するんだけど
DLLとかに追い出してexeのサイズめちゃくそ小さくする技ってないの?
2022/06/18(土) 03:06:58.73ID:mpDFzLxz0
>>249
>1MBくらいに肥大化
32bit版のbinすら800KB位あるんだから1MBなど普通では?
って思うけど、exeのサイズを縮小するならUPXで圧縮する方法が定番だと思う
2022/06/18(土) 06:54:20.32ID:GeQVRfhA0
AutoHotkey.exe+スクリプト
2022/06/18(土) 07:05:18.04ID:GeQVRfhA0
exe化は AutoHotkey.exe+スクリプトコードのリネームなのでそれなりにボリュームは出るよ

ahk2exeと同じフォルダにupx.exe入れとけばコンパイル時に自動で圧縮してくれたはず
昔はupx同梱でデフォで圧縮されていたがupx通したexeがアンチウィルスソフトに
ウィルス認定されるトラブルが続出したために任意になった
2022/06/27(月) 00:52:55.32ID:UvEhsTyJM
文字列の中からif (文字列変数=日本語が含まれない場合)のような制御は可能でしょうか?
厳密に言うと0~9, a~z,-の37文字以外が含まれるかいなかで制御を変えたいのですが、効率的な方法はあるでしょうか?
2022/06/27(月) 01:04:03.67ID:Q8/7ylL30
正規表現でいいのでは
/^[0-9a-z-]+$/
2022/06/27(月) 01:19:06.54ID:UvEhsTyJM
ありがとうございます
正規表現使ったことないんですよね・・・
2022/06/27(月) 01:36:37.59ID:Q8/7ylL30
CheckString(t, p) {
switch RegExMatch(t,p) {
case 0:
MsgBox,NG
case 1:
MsgBox,OK
}
}
target1 := "abc123"
target2 := "abc123あいう"
pattern := "^[0-9a-z-]+$"
CheckString(target1, pattern) ; OK
CheckString(target2, pattern) ; NG
2022/06/27(月) 01:39:17.66ID:Nu7oMv5c0
正規表現ならまだ当分使っていけるし案外簡単だから、ちょっとやってみては?
2022/06/27(月) 02:11:35.81ID:S3xgomb00
256
AutoHotkeyでこういう関数定義するつかいかたしたことなかったです・・・
2022/06/27(月) 02:24:16.68ID:YhlfDLU70
関数を定義しているってのが分かるのに、正規表現を知らないとは
珍しいな
2022/06/27(月) 02:40:19.69ID:W5jq7nCb0
正規表現は(大抵の)テキストエディタ内の
凝った検索・置換にも使えるしすごく便利
2022/07/02(土) 17:39:39.84ID:hmaCrciT0
複数のソフトに対して同じ命令を与えたい場合、
ソフトの分だけ、同じスクリプトを記述するしかないですか?

#IfWinActive,ahk_exe notepad.exe
ほにゃらら
#IfWinActive

#IfWinActive,ahk_exe mspaint.exe
ほにゃらら
#IfWinActive
2022/07/02(土) 18:51:20.82ID:raGNhS/v0
>>261
#IfWinActiveだと無理っぽいのぉ
#Ifなら出来た

#If (WinActive("ahk_exe notepad.exe") or WinActive("ahk_exe mspaint.exe"))
F1::
msgbox, ほにゃらら
Return
#If
2022/07/02(土) 18:55:01.66ID:Ln75kBVu0
>>261
#If WinActive("ahk_exe notepad.exe") || WinActive("ahk_exe mspaint.exe")
ほにゃらら
#If
2022/07/02(土) 20:34:12.42ID:hh5Yon8H0
ほにゃらら部分を関数にするという手も
2022/07/02(土) 21:01:53.70ID:Wt0yDxM+0
GroupAdd 使うとか

GroupAdd, GroupName, ahk_exe notepad.exe
GroupAdd, GroupName, ahk_exe mspaint.exe

#IfWinActive, ahk_group GroupName
ほにゃらら
#IfWinActive

話ちょっと変わるけど、
アプリ別にホットキー設定を纏めて書く場合とホットキー設定別に纏めて書く場合で
スクリプトの書き方違ってくるから自分が見やすい書き方にした方が後々メンテしやすくなる
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

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