探検


AutoHotkey スレッド part29

■ このスレッドは過去ログ倉庫に格納されています
1名無しさん@お腹いっぱい。
垢版 |
2021/05/12(水) 06:27:46.35ID:d0RqdHRN0
!extend:vvvvv:1000:512
!extend:vvvvv:1000:512
↑スレ立てする時は3行にして下さい

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

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

■日本語解説等
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

※テンプレここまで
VIPQ2_EXTDAT: default:default:1000:512:: EXT was configured
2021/10/23(土) 09:05:55.25ID:wIoAtasi0
>>368
予想できたけど、やっぱり思い込みの激しい人だね。あまりにも事実誤認がひどいw 順番前後しますが、
>Ctrl+Aは「ショートカットキー」であって「ホットキー」ではありません
はいこちら↓IT用語辞典でもWikipediaでも同じ扱いと説明していませんか?これ質問です。答えて下さいね
ttps://www.weblio.jp/content/%E3%83%9B%E3%83%83%E3%83%88%E3%82%AD%E3%83%BC
あなたの場合、他にもあると考えた方がいいですよ。間違った思い込みを確認もせずに書き込む
改善できないなら「スレ住人に迷惑になるのでもう書込まないつもり」の方がよろしいのでは?
ここまでを踏まえた上で戻りますが
>日本語wikiの説明文は〜事象として>346があってそれを伝えるために説明文が作られました
では、その日本語wikiのどこにNキーロールオーバーというワードを伴った説明があるのですか?
「実際にテンプレ作りに参加していた者として」語るなら回答をお願いします

それから358の質問にロクに回答がありません。回答しない理由を説明して下さい。
きちんと向き合い調べて回答すれば、あなたが間違った思い込み(とまで書かないと分からないようなので)を
していると理解できる内容になっていると思いますがね…
都合が悪くて答えられないというならそのように書いて下さい。それでお終いです
ただし、そのような考え方の持ち主が古参だとマウント取った気になって書き込んだ所で
>理解できないことを無視して持論を展開しても正しい答えにはたどり着け
ないでしょう。それどころか、間違いを書き散らかす迷惑行為でしかないと自覚して下さい
2021/10/23(土) 16:58:22.12ID:PwDrQAzA0
予想通りの回答ありがとう
この件に関してはもうこれ以上言うことはないです
君の言い分は9割筋が不明ですしほぼスルーで来てますが
これからもまともに取り合う気はないので安心してください

ただ明らかな間違いの指摘だけはこれからもしていく所存です
どちらが正しいかは見てる第三者が判断するでしょう
2021/10/23(土) 18:47:06.02ID:tm2/SAqa0
Gui, Add, Picture, , % "HBITMAP:" LoadPicture("imageres.dll", "Icon100")
Gui, Add, Button, , 回転
Gui, Show

回転ボタンを押したらビットマップが左に90度回転するようにしたいんですけど分かる人いますか?
2021/10/23(土) 19:33:32.20ID:wIoAtasi0
>>370
あなた都合が悪いといつもいつも逃げるよねぇ
>Ctrl+Aは「ショートカットキー」であって「ホットキー」ではありません
こんな間違いを書き散らかして恥ずかしいと思わないのか? 他にもあるとは考えないのか?
これでスマンのひと言もなくスルーするのだからお里が知れるというものです
何が古参なんだか… 笑わせないで下さいね。ただ無知を晒してるだけでしょ
自分で調べたり検証したりしないから、こんな↓いい加減なことが書けるのです
>たまたま caps+shift+bが通るパターンなだけであって
たまたまではなく理由があります。何だと思いますか?って聞いたのにこれも答えないよね?
ここまでくると正直クズと言った方がいいくらいだと思ってしまいます。ホント小さいねぇ
2021/10/23(土) 20:10:57.92ID:if0NganB0
>>370
第三者だけどあなたが正しいと思うよ
2021/10/23(土) 20:21:38.83ID:wIoAtasi0
>予想通り
とはこういうこと。出てくると思ったよ
>Ctrl+Aは「ショートカットキー」であって「ホットキー」ではありません
これが正しいのかねぇ
2021/10/23(土) 20:41:06.24ID:if0NganB0
周りは>>370が正しいと思ってることは予想してたんだw
2021/10/23(土) 20:41:09.95ID:W5oWq7XA0
長文の言い争いレスのせいで埋もれていった数々の質問等の正当なレスに対して何かしらの言葉があってもいいのに…って草葉の陰で歌丸さんが言ってた
2021/10/23(土) 20:48:01.85ID:wIoAtasi0
>>375
ホント都合いいねw あんたみたいなのが出てくることが予想通りと書いたのさ
いちからか? いちからせつめいしないとだめか? ってやつだな
しかも、こちらにレス向けてくるでもなくネチネチと実に卑しいことで
2021/10/23(土) 20:59:50.42ID:kEAWg/+b0
>>376
ほんとすまんかった
2021/10/23(土) 21:13:59.50ID:if0NganB0
>>377
あんだけ人には言葉使いに説教垂れてたのに自分は平気で暴言吐きまくるんだなw
2021/10/23(土) 21:18:39.64ID:wIoAtasi0
>>379
>多少語気強めだろうと正確なレスする人の方が方がマシだな
って書いてるレスがあったしからクズだと思ったものにはクズに向けた対処した方がいいと学んだのさ
あんたは違う、クズじゃないと言うなら代わりに聞こうじゃないか? 逃げずに答えるんだぞ
>Ctrl+Aは「ショートカットキー」であって「ホットキー」ではありません
これが正しいのか? 正しいというなら客観的かつ合理的な根拠を示してくれ
2021/10/23(土) 21:21:37.94ID:if0NganB0
学んだってことは以前のお前の主張は間違いだと認めるんだよな?
じゃあ言葉使いがどうこうと言って偉そうにしてたことを謝罪してくれよw
2021/10/23(土) 21:26:03.61ID:wIoAtasi0
>>381
まず聞かれたことに答えてくれ
自分は聞かれたことには答えないけど質問はするという身勝手極まりない人間です
というなら、そのように明記してくれ
どちらも選ぶにしても簡単な話だろ?
2021/10/23(土) 21:28:12.11ID:if0NganB0
身勝手極まりないのはどちらの方かは見てる第三者が判断するでしょうw
2021/10/23(土) 21:36:03.51ID:wIoAtasi0
>>383
やっぱりねw 都合が悪くなるとすぐ逃げる
そんなことばかりやってて生きてて恥ずかしくないの……だろうなぁ
所詮クズはクズって誰のセリフだったかねぇ

>>371
正直何をどうしたいのか分からない部分が多いがあまりに流れたので…
wikiのGUIの所をButtonでページ内検索して説明やサンプル見た方がいいと思うよ
ただ、やりたいことの内容次第では普通にフリーソフト使った方がいいかもね
385名無しさん@お腹いっぱい。
垢版 |
2021/10/23(土) 21:55:50.25ID:Bky0JLgM0
噛み付く人は一人かせいぜい2人だと思うので
ワッチョイでNGにして平和なスレになってほしいな
2021/10/23(土) 22:08:23.16ID:BD9A5l/z0
その為にはさっさとこのスレ埋めて次スレ立てるべきだから
毎日ずっとトンチンカンなこと言って発狂してるこのマジキチをおちょくってレス伸ばすといいw
この手のバカガイジは最後にレスしたら「相手は逃げた!俺の勝ち!」って思ってるからw
2021/10/23(土) 22:14:45.27ID:8gahgIOc0
IDコロコロさせてるのがうっとうしいから
コテつけて好きなだけ言い争えばいいのよ
2021/10/23(土) 23:01:35.19ID:TzZ9AlKV0
自分に反発する人が多いと必ずIDコロコロ言い出すアタオカ脳
2021/10/23(土) 23:06:53.33ID:8gahgIOc0
だからコテつけろよw
お前ずっと罵倒だけして訳のわからん事言ってる奴だろ
何か言われるとコロコロさせてるの誰も気づいてないと思ってたの?
2021/10/23(土) 23:09:27.15ID:TzZ9AlKV0
誰と勘違いしてんのかなアタオカ君
疑うなら証拠出してから言えよ
2021/10/23(土) 23:18:34.20ID:wIoAtasi0
実際、一昨日コロコロあったから(悪意のあるなしは別にして)ないなんて誰も言えないはずなんだよなぁ
都合が悪くなったらコロコロ〜 、また都合が悪くなったら〜ってやるのがいても何も不思議ではない
間違いを認めない奴ほど執拗に粘着してくると思うし。そうコロコロしてでもね
自分はそんな卑しいことはしないと断言できるし、仮に同日中にIDが変わったなら、その後すぐにでも知らせるがねぇ
ガイジとかマジキチとかアタオカとか言い出す奴が本当のキチガイと言うのは大体相場だからw
2021/10/23(土) 23:24:49.29ID:TzZ9AlKV0
不思議ではないってだけで思い込みだけで決めつけるのはアタオカ脳
可能性じゃなくて証拠を出せといってんだが
393名無しさん@お腹いっぱい。
垢版 |
2021/10/23(土) 23:27:36.40ID:YvdDFSVf0
https://i.imgur.com/UYqJce7.png
2021/10/23(土) 23:33:09.26ID:wIoAtasi0
>>392
このように沸点が異様に低いのもキチガイの特徴ねw ま、それはともかくとして
一昨日、こちらが指摘した後に書き込んだ本人がIDが変わってことを認めた書き込みがある
この「事実」があればそれで必要十分。あんたと同一とも言っていないし。むしろ聞きたいくらいなんだが
>>387さんにコロコロと言われてアタオカなんて反応したのは心当たりがあるからか?
上にも書いたが自分の場合はそんなことしないと断言できるから、アタオカとか言わずにはっきり否定できるんだが?
2021/10/23(土) 23:40:05.49ID:TzZ9AlKV0
388はただの一般論
つまりお前が俺に噛みついてくる理由もないはずなんだが?
2021/10/23(土) 23:48:13.39ID:wIoAtasi0
>>395
こちらの391に対してあんたの>>392が書き込まれたんだろ? 「不思議ではない」って文言引いてるわけだし
この>>392ってお前だよな? 違うのか? お前だと思うから394でお前にレスしたんだが?
というか、心当たりがあるのか?って聞かれて答えないこと自体がもうね…
聞かれたことに答えずに質問はしてくるという共通した特徴があるねぇ
2021/10/23(土) 23:53:29.80ID:TzZ9AlKV0
当然他のスレも含めて過去に意味不明な妄想で勝手に決めつけるアタオカに疑われたことならあるから
「疑うなら証拠を出せ」と言ってるわけだが
2021/10/23(土) 23:58:12.33ID:wIoAtasi0
>>397
まず聞かれたことに答えようね(笑) 答えられないならそう書いてくれ
回答もしないで違うこと書かれても話を進めるつもりはありません
議論するには最低限信用できると思えないとね
また都合が悪くなったら逃げるのかという疑問は解消してくれ
2021/10/24(日) 00:05:28.88ID:1jzgdyCT0
証拠もなく妄想だけで決めつけるような奴とは議論にならない
論理的に言って「一昨日、こちらが指摘した後に書き込んだ本人がIDが変わってことを認めた書き込みがある」
ってだけでは何の証拠にもなってないので必要不十分
2021/10/24(日) 00:09:39.21ID:ypwnfRNT0
>>399
自分は昨日の ID:wIoAtasi0 だが
レスも向けられていないことだし、まず君は昨日のどのIDなのか明らかにしてくれないか?
昨日酷似したフレーズはあるが、一応確認はしておきたい
2021/10/24(日) 00:18:45.79ID:nhehI/6p0
はい本日のNGID:ypwnfRNT0
もし同日中にID変わったらまたちゃんと教えてくれよなキチガイw
じゃ透明あぼーんしてサヨナラw
2021/10/24(日) 00:25:15.68ID:ypwnfRNT0
あぼーんするのは一向に構わんが、どれだけ悔しかったんだろうかと思ってしまうな
恐らくとんでもなく下らないことに執着してるからそんな醜いレスになるのだろう
こんなふうにはなりたくないねぇ
今日もコロコロ出てくんのかね… 指摘されても分かるようにしない奴は悪用したい奴だわな
403名無しさん@お腹いっぱい。
垢版 |
2021/10/24(日) 02:33:50.98ID:+BltRcIi0
公式フォーラムで偶然見つけたんだけど、これムチャクソ便利。
テンプレに追加いただきたい。EXE版もある。
https://github.com/G33kDude/CodeQuickTester
2021/10/24(日) 02:48:33.77ID:uWOKLHWN0
##!!挨拶

msgbox % "hello, world"

##!!足し算

a:=1+3
msgbox % a

##!!引き算
...

みたいなサンプルコードを一つの.ahkファイルに大量に書き込んでいって
##!!で区切られたカーソル位置のコードを抽出・実行するエディタマクロ書くとくっそ便利だぞ
試したコードが全部残るから後からライブラリの使い方なんかを検索できるのが良い
2021/10/24(日) 03:04:56.94ID:uWOKLHWN0
エディタマクロじゃなくファイル名とカーソル位置渡して処理するahkスクリプト作ればほぼエディタ非依存になるな
渡された拡張子ごとに起動するexeを変えればどんな言語にも対応できて言語学習が楽になる
スクリプトのエラーでたらダイアログで^cしてテキスト解析してタグジャンプする機能もつけると良い
2021/10/24(日) 07:32:03.71ID:JP2XxhyJ0
>>404
Pythonで言うところのJupyterっぽいものかな?
趣旨は面白いけどサンプルの集積ファイルの拡張子を.ahkにする必要はなくない?
ファイルWクリックでうっかりスプリクト直実行したら面倒なことになりそうだし
.ahksmp とか適当な拡張子にしてエディタの設定でahkと同じ言語とみなさせるのが良さそう
2021/10/24(日) 15:08:40.25ID:GE8RRKVk0
やはりキーボード同時押し数が正解でしたね
408名無しさん@お腹いっぱい。
垢版 |
2021/10/24(日) 16:08:11.51ID:QmjH2oP70
この前コンサルが言ってたけど、>>297 こういう自分と同じ苦労を相手にもさせる系の人が新人をうまく育てられずに日本を凋落させたんだって。
2021/10/24(日) 16:37:05.82ID:ll/8J9U00
stupid idiot
2021/10/24(日) 18:39:27.68ID:JdT5yaNU0
新型爆弾投下・・・・・不発だった
2021/10/26(火) 12:29:05.96ID:2NB2/Rl30
添削お願いします!

winmoveは動くのですがwinsetが動きません。

また、最大化されたウィンドウを、ウィンドウ化するのはどうすればいいでしょうか?

IfWinExist, ahk_class Chrome_WidgetWin_1
{
  WinMove, 300, 0
  WinSet, region, W640 H480
}
Return
2021/10/27(水) 19:28:37.13ID:SADro+2p0
>>411
WinSetは矩形の左上の座標を指定すれば動く

てか単にウィンドウサイズ変更したいならWinMoveだけで出来るけど違うの?
WinMove, A, , 300, 0, 640, 480
413名無しさん@お腹いっぱい。
垢版 |
2021/10/29(金) 15:14:46.61ID:hjfgMkrj0
AHKの中からNode.jsを呼ぶ処理があったのですが
Node.jsをインストールし直したら、Nodeがないと言われるようになりました
Nodeはコマンドプロンプトからは問題なく実行できます
調べているうち、システム環境変数PATHの変更(C:\Program Files\nodejs\の追加)が
AHKに伝わっていないことに気づきました
コマンドプロンプトなどは新しく起動したら最新状態の環境変数を持たされますが、
AHKは一度Exitさせて再び実行しても、なぜか環境変数の値は古い状態のままです
PCを再起動したらおそらく反映されると思いますが、
なぜAHKはこのような挙動をするのでしょうか?
2021/10/29(金) 15:18:23.62ID:qbitNmsQ0
「思います」って...
415名無しさん@お腹いっぱい。
垢版 |
2021/10/29(金) 15:32:32.70ID:hjfgMkrj0
ふと思いついてExplorerのウインドウからAHKスクリプトをダブルクリックしたところ、
環境変数が無事反映しました
EverythingでAHKスクリプトを検索する→それをダブルクリックする
というやり方で起動していたので、AHKの親プロセスがExplorerではなくEverythingになっていたようです
環境変数の変更をExplorerは反映しますが、
ランチャー的な機能を持った他のアプリはそういうことはしないので、こうなっていたようです
つまりAHKが原因ではありませんでした
失礼しました
2021/10/30(土) 11:56:04.15ID:mCuF9d5d0
ほとんど情報が出てこないからおま環に近いのかもだけど
マルチモニタ環境でモニタサイズが違うのが混ざってたりWindowsの設定で拡大かけてるモニタがあると
位置の取得がおかしくなったりクリック位置がずれたりするのどうにかならんかな
仕方なしに関数で対応してはいるけど
417名無しさん@お腹いっぱい。
垢版 |
2021/10/30(土) 21:44:36.72ID:XEJyG3dD0
おま環ではないよ
スケーリングを設定している環境だと、拡大前と後の2つの解像度が存在するので、したがって座標も変わるね
AHK側でこのあたりを吸収して透過的に扱えるようにしてくれたらいちばんきれい
(ユーザーが使うのは、ほぼ100%スケーリング考慮後の座標だと思うので)

スケーリングの使用は一般的になってきつつあるので、
誰かが開発者に要望を出せば考慮されるかもしれない
2021/10/30(土) 22:09:20.54ID:e9mhxhzq0
>>417
マルチモニタでサイズ違うのが混ざっていても、スケーリングかけてなけりゃ座標おかしくなったりはしてない
419名無しさん@お腹いっぱい。
垢版 |
2021/10/31(日) 00:13:52.55ID:rkPIoppl0
>>418
「スケーリングを設定している環境」の話だよ
2021/10/31(日) 00:34:43.78ID:nRlJrSF+0
>>419
アンカーミスだ
>>418>>416宛て
>マルチモニタ環境でモニタサイズが違うのが混ざってたりWindowsの設定で拡大かけてるモニタがあると
に対してのレス
2021/10/31(日) 11:38:55.91ID:qs1P04jt0
>モニタサイズが違うのが混ざってたりWindowsの設定で拡大かけてるモニタがあると
この文の解釈かな

A モニタサイズが違うのが混ざってたり(して)
B モニタサイズが違うのが混ざってたりWindowsの設定で拡大かけてるモニタがあ(ったりする)と
416はAのつもりで書いてて、418はBで解釈してる
Bのように後者の”たり”を省略するのは誤用と言われてるが、使用例は増えてる
2021/10/31(日) 12:35:07.09ID:RDvFjtnY0
>>421
orなのかandなのかは明確に書かないと伝わる訳ないわ
Aのつもりだとしたら
「モニタサイズが違うのが混ざってWindowsの設定で拡大かけてるモニタがあると」
と書くべきだし
423416
垢版 |
2021/10/31(日) 12:36:57.20ID:IiQcZUNA0
自環境だと、モニタサイズの違い、Windowsで拡大かけてることによるDPIの違い、2つの原因で位置ずれが起きてることが確認できてるんだ

どっちかっていうとモニタサイズ差による位置ずれの方が海外の掲示板でも同症状が確認できた
「位置ずれがある人はモニタサイズの倍率差を求めて修正してやれ」っていうレスを確認したおかげで自環境での位置ずれの原因がわかったので
厳密に言うと、入力する方じゃなく取得する方がおかしくなるんだと思う
WindowSpyで見ると、プライマリモニタと取得先のモニタサイズが同じサイズってことになってる
でも実際にはモニタサイズは違うのでその分ズレる
2021/10/31(日) 12:39:54.01ID:RDvFjtnY0
そもそも「モニタサイズ」じゃなくて「解像度」のことじゃねえの?
「モニタサイズ」ってのは24インチとか32インチとかのことなんだが
425416
垢版 |
2021/10/31(日) 12:40:48.24ID:IiQcZUNA0
それはそうだゴメン
2021/10/31(日) 12:43:51.81ID:RDvFjtnY0
>>425
それで一時的にでもいいから両方ともスケーリング100%にしても座標ズレるの?
何がどうズレるんだ?
427416
垢版 |
2021/10/31(日) 13:04:37.56ID:IiQcZUNA0
>>426
ウチだとズレるね
もう少し詳しく書くとウチはモニタ2が2550x1440、プライマリモニタが3840x2160なんだけど
ahkからはモニタ2の解像度が3840x2160に見えるの
試しにUWSCでモニタ2の左端のxの位置を見ると628なのにAHKで見ると942
モニタ2はプライマリモニタの0.66666666...倍の解像度なので
試しに942にこの数字をかけてやるとUWSCで取得できる数字と同じになる
428416
垢版 |
2021/10/31(日) 13:13:58.08ID:IiQcZUNA0
ややこしいのは、AHKのコマンドによっても要求される数字の形式が違うこと
ControlClickだとAHKで取得した数字が多分そのまま使える
Clickやそれに類するコマンド使おうとすると派手に位置ずれが起こる
Clickでは更にDPIの差でも原点の位置がズレる
429416
垢版 |
2021/10/31(日) 13:22:38.81ID:IiQcZUNA0
DPIの差の方だと、多分0,0の原点の位置がウィンドウの左上からズレてる
だから現状はまずDPIの原点の位置のズレの量を調べて
その分AHKで取得した位置からズラして更に解像度の差分数値を修正してる
だけど正直あってるかわかんないし他所で拾ってきた関数にも修正が必要になったケースがあったので
どうにかなんねえかなあという話
2021/10/31(日) 13:28:23.12ID:K7Xe4XRy0
開発にそのまま報告して直してもらうしかないってところだな
2021/10/31(日) 13:36:51.94ID:RDvFjtnY0
>>427
プライマリに対してモニタ2をどこに配置してるのか分からないので
左端が628とか942とか言われても意味不明なんだが
例えばプライマリの左側にモニタ2を配置した場合はモニタ2の左端のX座標は-2550になるはずだし
ちなみにCoordModeの設定は当然Screenにしてるよな?
2021/10/31(日) 13:50:20.93ID:IiQcZUNA0
そこまで説明する意味ある?わかんないなら別にいいよ愚痴だし
CoordModeは都度色々試してるよ
例えばおそらくDPIの影響はScreenだとない
2021/10/31(日) 13:55:01.15ID:RDvFjtnY0
>>432
説明不足だと指摘してるだけだがな
分かってもらう気すら無いならそもそも独り言の愚痴なんかバカッターでやってろレベル
2021/10/31(日) 14:11:04.68ID:lJeNoI7v0
AHKとして座標の取り扱い基準が定まっていない(うまく抽象化できてない)ってことなのね
いくつかある自分の環境では異解像度/異スケーリング混雑環境が無くて体験したことはないけど、既存(放置)の課題っぽい気もする
2021/10/31(日) 14:20:01.03ID:MgVk3Lf+0
なんか勘違いしてるだけな気もする
俺もマルチモニタだけどスケーリングを使わない限りズレること無い
2021/11/01(月) 17:22:24.76ID:+J8usr/r0
>>412
ありがとうございます!カンマ指定ミスでmoveが動かなかったのでsetで試行錯誤してました。
数字はおま環ですがこれで動作しました。

WinRestore, ahk_class Chrome_WidgetWin_1,
WinMove, ahk_class Chrome_WidgetWin_1,,304 , 0, 1420, 1048
2021/11/02(火) 00:30:09.26ID:lDHW2ZEG0
秒(整数)を○時間○分○秒という文字列としてアウトプットするにはどうしたらいいのでしょうか?

【例】4444秒→1時間14分04秒
2021/11/02(火) 11:18:18.67ID:OO/duLvC0
t秒を3600(1時間=3600秒)で割ると時間が出る
h := % t // 3600

t秒を3600で割った余りを60(1分=60秒)で割ると分が出る
m := % mod(t, 3600) // 60

t秒を3600で割った余りを60で割った余りが秒になる
s := % mod(mod(t, 3600), 60)
439名無しさん@お腹いっぱい。
垢版 |
2021/11/02(火) 19:29:10.63ID:TJIU2FD40
Winset, Alwaysontop, toggle, A でウィンドウの最前面切替はできるようになったのですが、どのウィンドウがそうなのかぱっと見分からないので赤枠をつけたいのですが、どんな関数やコマンドを調べたらよいでしょうか?
2021/11/02(火) 19:51:55.72ID:cIGHCeod0
>>438
ありがとうございます
頭良い人はこういう問題もスラスラ解けるんですね
2021/11/03(水) 00:37:12.47ID:hM06VbJz0
04秒のように表示桁に2桁したく
SetFormat, Float, 2. 0
のようにやってみたのですが、スペースが入るだけで0が追加されません
どうしたらよいのでしょうか
2021/11/03(水) 02:10:02.91ID:YHeqSREz0
>>441
頭ゼロ埋めしたいならTotalWidthの前にゼロを付ければいいよ
SetFormat, Float, 02.0
http://ahkwiki.net/SetFormat
秒が整数なら、↑のRemarksのところに書いてある通り0.0足すとかして小数にする必要があるよ
2021/11/03(水) 16:18:42.90ID:AEO01uZo0
>>442
本当にありがとうございます
よい一日をお過ごし下さい!
2021/11/03(水) 22:39:18.06ID:QVMsARoA0
AHKがフックをたまにしくじるんですが、windowsAPI叩いたほうが精度高いですか?

https://sites.google.com/site/agkh6mze/howto/winevent
2021/11/04(木) 04:17:07.16ID:EvsPaWTu0
同名のラッパーが許されてしまうのか…
きめぇ

IniWrite(fn, sec, ident, value) {
if(fn = 0)
fn := A_ScriptFullPath . ".ini"
if(sec = 0)
sec := "Settings"
IniWrite,%value%,%fn%,%sec%,%ident%
}
2021/11/07(日) 14:43:43.76ID:ukl3041V0
これすごい関数集。テンプレ化どうでしょう?
https://github.com/Ixiko/AHK-Rare
2021/11/10(水) 02:37:02.28ID:XA04+P+o0
クリップボードを使わずに、選択したテキストをSendするにはどうすればいいでしょうか?
2021/11/10(水) 12:21:23.58ID:+K+yKC8g0
無理
2021/11/11(木) 16:46:41.71ID:D1UCgsJI0
>>447
クリップボードを使うとしてもスクリプト実行直後(処理前)にクリップボードをバックアップしといて処理終了時に復元すれば良いと思うけどな
2021/11/11(木) 18:58:19.53ID:5liI+TA/0
XInputの入力を検出したいのですが
https://www.autohotkey.com/board/topic/35848-xinput-xbox-360-controller-api/
こちらのページにある XInput.ahk for AutoHotkey 1.1 を使えば出来るのでしょうか?
使い方がさっぱり分からないのですが

Joy1::
Send, z
Return

これをXInputのAボタンで行うにはどうすればいいのでしょう?
451450
垢版 |
2021/11/12(金) 22:19:17.20ID:MxdkahLq0
XBOX360コントローラーからXBOX ONE コントローラーに乗り換えたら
ahkでパッドのボタン入力を検出できなくなりました
最初はOneコントローラーがXInput専用でDirectInput出力されなくなったのかと思い>>450の質問をしたのですが
その後色々調べたところOneコントローラーもXInputとDirectInput両方出力されていることを確認しました
しかし何故かどうやってもAHKではOneコントローラーの入力を検知できず、
Joy1::
msgbox, GAMEPAD
Return
なども一切動きません
何が原因でしょうか?
またXBOX ONE コントローラーを使っていてAHKで検知できると言う方居ますか?

※コンパネ画面
https://i.imgur.com/BqEiRBV.jpg
2021/11/13(土) 01:13:04.89ID:v6ICOWJR0
JoyToKey
453451
垢版 |
2021/11/14(日) 14:24:55.17ID:EIIGuHrF0
検知できないのがおま環かどうかだけでも知りたかったけど、XBOX ONEコントローラー使ってる人いませんかね?
2021/11/14(日) 19:10:08.01ID:ZtzAi/yX0
Win10がアップデートで仕様が変わったらしく取得できなくなったらしいよ
xinput1_3.dll経由なら取得できるようだけど
https://www.autohotkey.com/board/topic/35848-xinput-xbox-360-controller-api/
455450
垢版 |
2021/11/15(月) 01:44:24.23ID:p8P7kH1j0
>>454
やはりOneコントローラーのドライバの仕様で検出できないんですね
XInput.ahkは私のレベルでは使い方がよく分からないので今は暫定的にJTK経由でAHKを動かしてるけど
出来れば直接XInputの入力をAHKで検出させたいですね
2021/11/15(月) 14:39:37.18ID:nGVwoqmF0
>>449
あーなるほど動作が解りました。
こういうことか

OnClipboardChange("ClipChanged",0)
Backup := ClipboardAll
Clipboard := String
処理
Clipboard := Backup
OnClipboardChange("ClipChanged",1)
2021/11/15(月) 19:04:56.79ID:gzGB/cbK0
2021/11/18(木) 14:48:03.44ID:ODAxHICs0
StringSplitで文字列を書き出す時につまずいたんですがこれをStringSplitを実行すると

F1::
test = +1+2+3+4+5 +6
StringSplit,word,test,%A_Space%`r,`r`
send,%word1%_
send,%word2%
return

sendで書き出されるものが 「+1+2+3+4+5_+6」 ではなくて 「!"#$%_&」 になりますが
+1が! +2が" +3が# +4が% +6が& になってます
数字キーをshift押しで出力されるキーがそのままでてきてます
これって何の機能なんですかね?どこかにこの説明がされているところありますか?
sendではなくsendrawにすれば 「+1+2+3+4+5_+6」 となるのはわかってるんですが
2021/11/18(木) 15:09:12.65ID:RZBaMAWA0
sendに+食わせたら、ホットキー同様にshiftになる仕様なんだから当たり前では?
基本的なことだから、どこにでも書いてあると思うけど
2021/11/18(木) 22:00:47.57ID:PMpaZla20
>>458
test := +1+2+3+4+5+6
461458
垢版 |
2021/11/23(火) 06:57:57.14ID:bdrNXIAY0
多分こっから色々質問してもこんがるがるからレスありがとうとだけ言っときます
ありがとう
2021/11/23(火) 07:01:38.39ID:5Ej+6TIU0
何がしたいんだ
2021/11/23(火) 09:42:18.86ID:FsLBOOY30
>>461
sendの仕様なんだから>>459の通り

1)+ を文字列扱いにしたいなら {} で囲って {+} にするか > test = {+}1 〜 {+}5 {+}6
2)sendコマンドで {raw} を付けるか > send,{raw}%word1%_%word2%

Send / SendRaw / SendEvent / SendInput / SendPlay - AutoHotkey Wiki
http://ahkwiki.net/Send
2021/11/23(火) 11:32:51.83ID:eqWXLOs/0
wikiの書式見ながら書いたんですが動かない。
複数指定って || と("")以外にありますか?
あんまり良くわかってないですがLoop処理とかなのでしょうか?

Process, wait, 001.exe || 002.exe || 003.exe, 1
NewPID = %ErrorLevel%
if NewPID = 0
{
MsgBox, 64, , 1秒の間に指定のプロセスが見つからなかった。
Return
}
; 見つかった場合
Process, Priority, %NewPID%, Low
MsgBox, 64, , 完了

ExitApp
2021/11/23(火) 20:03:41.04ID:3MPpb6Xl0
>>464
AutoHotkeyのコマンドは1つで複数を指定できない。
条件分岐は別。if (p="001.exe") or (p="002.exe") or (p="003.exe")
なのでLoopで1つずつ処理する。

サンプルコード
https://pastebin.com/e44AEHNi
2021/11/24(水) 15:43:11.73ID:227OclMX0
>>465
ありがとうございます!
Loop,parseの使い方が理解できました。いただいたサンプルがおま環で動かなかったのでがんばって直してみました。
https://p.ahkscript.org/?p=534c332a

;これからそのプロセスが起動する場合
の処理が難しくて、、、今のところ使わないですがこういうの覚えたい。
2021/11/24(水) 19:53:15.88ID:bsPs+xrf0
>>466
※返信内容考えるの大変だろうから返信はしないでくれ

動かない原因は関数名の重複かもしれない。
サンプルコードでは2つともを p() にしていたから。
そうでないならバージョンが最新でない。

;これからそのプロセスが起動する場合 
↑このコードについて修正点がある。
あのコードでも目的は果たせるが、
.RemoveAtじゃなくて.Deleteが目的に合っているし、
Forループ中にキーを削除してはいけない仕様を忘れていた。

その仕様は英語版wikiに書いてある
deeple翻訳"
既存のキーと値のペアはループ中に変更することができますが、
キーを挿入または削除すると、一部のアイテムがスキップされたり、複数回列挙されたりする可能性があります。
これを回避するには、削除するキーのリストを作成し、
最初のループが完了した後、2つ目のループを使用してキーを削除する方法があります。
"
修正版とForループ中にキーを削除するとどうなるか確認用コード
https://p.ahkscript.org/?p=7e8ec33b

オブジェクトは変数管理に超便利だから、気が向いた時にでも試してみるといいぞ!
2021/11/24(水) 20:03:20.61ID:TDKs5fj70
日本語で変数作るとびっくりするほど見づらいw
■ このスレッドは過去ログ倉庫に格納されています

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