AutoHotkey スレッド part31

■ このスレッドは過去ログ倉庫に格納されています
2022/08/05(金) 19:42:50.49ID:/TKqzZjq0
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑スレ立てする時は3行にして下さい

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

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

■日本語解説等
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/08/05(金) 19:43:50.07ID:/TKqzZjq0
止んだかな?
2022/08/05(金) 19:52:15.03ID:uvVnAC2X0
立てても直ぐ荒らされそう
2022/08/05(金) 20:03:48.40ID:yPoU5tHa0
>>3
なんなの?

中国?
2022/08/05(金) 20:54:43.98ID:Dm2nR56E0
利益があるからやるんだろうけど、
どんな利益があるんだろう。興味深い。
2022/08/11(木) 10:50:48.29ID:m5UQ93DDr
質問させてください

文末に重複があったら削除したいのですが、うまく動きません。
文末の $ を入れないと削除はされるのですが、文末のみの重複に限定したいのです。

title1 = aaabbb xyz
title2 = xyz


title1 := RegExReplace(title1,title2$,"")
msgbox %title1% %title2%
2022/08/11(木) 11:04:28.53ID:NkG5LSw70
title2 "$"
2022/08/11(木) 11:21:21.09ID:m5UQ93DDr
>>7

期待通りのことが出来ました
ありがとうございました!
2022/08/14(日) 12:48:43.42ID:XXvwhqy40
このスレたまにしか見ないけど突然前スレ終わっててビビった
2022/08/15(月) 17:24:10.49ID:ZTdf6VGh0
タイマーイベント内でマウスの右クリックを検知して座標を取得したいのですが
うまく行きません。添削お願いします。


OnTimer_RButtonClick:
global gTmerEndFlg
global wk_xPoint
global wk_yPoint

GetKeyState, state, RButton, "p"
if( state = D ){
MouseGetPos, wk_xPoint, wk_yPoint,,,
SetTimer, OnTimer_RButtonClick, Off
gTmerEndFlg := 1
}
Return
2022/08/15(月) 17:44:31.41ID:R1eaQbaI0
"D"
2022/08/15(月) 17:47:30.69ID:ZTdf6VGh0
>>11
ありがとうございます。
凡ミス過ぎる・・・。おかげで夏休みの宿題片付きそうです。
2022/08/17(水) 16:56:44.57ID:KsHadKqZ0
例えばEXCELで、
「シートA」がアクディブか、「シートB」がアクティブかを、
Autohotkeyで判定できますかね?
2022/08/17(水) 18:48:00.23ID:2BAVRMcb0
正攻法では無理
2022/08/17(水) 19:12:30.69ID:kIebPVjG0
ウィンドウサイズ取得して左下からの相対座標でシートAとシートBのタブの相対座標を計算しておいて
タブの座標の色で判定するとか?
(最適解とは思えないけど)
2022/08/17(水) 19:23:48.01ID:KsHadKqZ0
>>15
まあ、その泥臭い方法だとできますね…w

あと、EXCELのウィンドウを手前にする必要がありますね…w
2022/08/17(水) 23:15:11.96ID:KsHadKqZ0
>>16
あ、
もしかしたらできるかも…
2022/08/18(木) 10:51:08.97ID:NO3EHSnN0
質問すみません
ブラウザでタブが複数開いていてその内クックパッドのページでだけ動作する
スクリプトを書きたいのですが、上手くいきません
以下の記述でタイトル指定しても無視されてるみたいで
全てのタブでshift+pgdnが実行されてしまいます
どう修正したらよいでしょうか?


WinActivate, ahk_exe firefox.exe
SetTitleMatchMode, 2
if (WinTitle =クックパッド)
{
send, ^{PgDn}
}

Else
{
MsgBox, none
}
ExitApp
2022/08/18(木) 11:24:58.40ID:3HYKiH080
>if (WinTitle =クックパッド)

この文法はahkには無いのでは
WinActivateしたあとIfWinActiveで分岐
2022/08/18(木) 11:54:41.90ID:NO3EHSnN0
>>19
おおお、一発で直りました
wikiや解説ページを参考にしてたんですがまさか文法自体が無かったとは
お陰様で解決です、ありがとうございました
2022/08/18(木) 12:01:03.61ID:YUO4Xk0o0
WinActivate, 〜 の上で何やってるか分からないが、if (WinTitle =クックパッド) の
「クックパッド」が変数名なら式は成立するけど「クックパッド」が文字列なら "" で囲まないとだめだろ
2022/08/18(木) 12:02:39.71ID:YUO4Xk0o0
ああ…ページ更新しないままレスってしまった○| ̄|_
解決したんなら良かったね
2022/08/23(火) 12:21:50.60ID:Cs7plx7/M
win+y、ctrl+yにはホットキーを割り当てられますが、
どういうわけかwin+ctrl+yには割り当てられません(割り当てても発動しない)
これは「おま環」でしょうか?
2022/08/23(火) 12:32:51.70ID:p5HwKJnd0
>>23
おま環というよりただのおまミスじゃね
書いたスクリプト貼れば
2022/08/23(火) 17:44:29.61ID:yxlja+qw0
v1.1.34.04
2022/08/24(水) 23:21:04.84ID:HUC+HBvh0
>>23
使ってるキーボードがその組み合わせの同時押しに対応してないとかは?
2022/08/24(水) 23:42:20.03ID:CaKTK6FI0
どういうスクリプト書いてるのか貼ろうとしない時点でお察し
無変換とか非修飾キーならまだしもCtrl+Winの3つ押し出来ないキーボードなんてまずあり得んし
2022/08/25(木) 00:49:59.43ID:DZGBU5100
CapslockをCtrlに置き換えとかしてる可能性もって思ったんよ
2022/08/25(木) 01:31:33.65ID:HvwW5Qsg0
まあそういう時はね
タスクトレイのスクリプトをOpenしてKey historyを見るのが定石よ
あとソフトウェアキーボードで確認するのも大事
スクリーンキーボードでもタッチキーボードでもOK
昨今の高級()キーボードには専用ユーティリティー付属なのが多くて
こいつが悪さをしている可能性もなくはないので
2022/08/25(木) 01:54:36.14ID:26F0up850
だからまずは本人出てきてスクリプト貼るのが先だっての
それを見もせずに空想であれこれ言っても無意味
2022/09/07(水) 14:51:22.09ID:GinzskfR0
このスレで質問しない方がいいよ
答えてくれないから笑

Yahoo!知恵袋で質問した方がまだ良い
2022/09/07(水) 15:06:19.53ID:wS8S8zE60
>>18の様にちゃんとスクリプト貼って質問すりゃ答えてくれてるがな
知恵袋()
2022/09/07(水) 15:21:36.59ID:6I5eoeDw0
情報全然出さない or 後出しで、エスパー期待するのはちょっとな。
2022/09/07(水) 15:25:59.64ID:wS8S8zE60
>>6>>10もちゃんと答えてもらえてるしな

>答えてくれないから笑 ←
2022/09/26(月) 13:30:02.05ID:BY6iQps40
単純にctrlとtabキー同時押したいんですけど
どう書けばいいんでしょうか?
2022/09/26(月) 14:03:31.60ID:VMr/5Xk50
>>35
wikiでSendのページを読みましょう
2022/09/27(火) 12:33:16.29ID:w4iQavtm0
>>36
ありがとうございます
以下のように作ってみたんですが
違う動作をするんですが
何か間違っているんでしょうか

Send, 山Tab
実際の動作としては
ctrl shift z で動いてるようです
2022/09/27(火) 14:22:40.25ID:s9W4/Dyt0
>>37
山 ってもはや釣りにしか見えんのだがw
書いたコードはそのままコピペしな

それとTabを送るときは { } で囲う
>>36ちゃんと読もうな
2022/09/27(火) 21:10:31.06ID:8ySQGzJc0
山w
2022/10/02(日) 04:26:36.62ID:pV5yvUuX0
LShift連打の有効無効をIfを使用しbool変数で切り替えるようにしているのですが
IfのFalseブロックに入ったとき何も処理をせずにLShiftを押しっぱなしの状態をマクロを使用していない時と同じ挙動をさせたいのですがどうすれば良いでしょうか


Send, {LShift}
細かく連打されてしまいダメでした


While GetKeyState("LShift","P")
{
Send, {LShift Down}
}
Send, {LShift Up}
これも「LShiftが押されている状態」を細かく入力している感じでダメでした
2022/10/02(日) 07:52:19.86ID:rP4asXXJ0
> LShift連打の有効無効をIfを使用しbool変数で切り替えるようにしているのですが
ここの判定部分を#Ifでやりゃいいのでは?
肝心な部分のソースがないから知らんけど
2022/10/02(日) 16:55:55.45ID:pV5yvUuX0
>>41
仰る通り#Ifで解決しました
ありがとうございました
2022/10/04(火) 12:02:15.23ID:HYSMre/80
トラックポイント付キーボード TEX Shura の購入を検討中ですが、
マウス右ボタンを押してる間、鍵盤右側をテンキーとして使えるようにするのは可能ですか?
2022/10/04(火) 12:30:30.35ID:0Kn+4E9H0
>>43
可能だけどそれによる弊害もあるのでお勧めしません(右ボタンドラッグが出来なくなるなど)
無変換やAppsキーなどあまり使わないキーをを修飾キーとして使った方が良い
2022/10/04(火) 13:39:26.56ID:wAQ4FAs30
TEXはプログラマブルキーボード作ってたと思うけど Shura は違うのかな?
ハードウエアマクロでやれるならそっちのほうがいい
2022/10/04(火) 14:27:15.53ID:HYSMre/80
なるほど マウスジェッウチャーが使えなくなるのか
左ボタンの方を使えばいいのかな?
2022/10/04(火) 19:53:34.31ID:z9pZ/0ve0
>>46
ドラッグ操作一切しないなら良いんじゃね
何事も自分でトライすることが大事だしな
2022/10/04(火) 22:33:58.11ID:aJlWJ7UH0
失敗しても簡単に戻せるのがAHK
2022/10/04(火) 22:38:59.57ID:gq9Z6JBK0
>>43
それだと両手が必要だからキーボードのみで片手だけで完結できるようにした方がよくない?
自分は変換キーのモディファイアでテンキー化してるけど、そのキーボードだと別のキーにしないといけないかな
2022/10/05(水) 11:40:06.43ID:xjGMIgt80
zが真ならzを代入、偽ならhelloを代入ってどうやって書くのがスマート?
期待した挙動を示すのは下二つしかないけどこんなの嫌だ

z := 0

a := z or "hello" ; => 1
b := z || "hello" ; => 1
c := z ? z : "hello"
if(!(d := z)) d := "hello"
2022/10/05(水) 12:15:33.97ID:sSg6WA/ra
言語によって仕様が違う二項演算子の計算順と副作用に頼った書き方をするほうが
スマートじゃないと思うけど・・・
2022/10/05(水) 12:56:38.69ID:1Xl/bfT40
下二つが嫌な理由がわからないのだが

数値と文字列で比較している以上
上二つはどんな言語でも期待した挙動にはならんぞ
2022/10/05(水) 13:57:00.31ID:FKjFoZwt0
>>50
switch もあるよ
スマートか?そんなもの知らん
54名無しさん@お腹いっぱい。 (ワッチョイ 7fdc-eWb8)
垢版 |
2022/10/07(金) 02:29:05.92ID:e7Xju8+j0
曜日は解ったんですが、○時~○時までってどうやって書けばいいですかね?

if (A_DDDD == "月曜日","水曜日","金曜日")
2022/10/07(金) 11:40:20.22ID:klRLsfuu0
いい加減wiki見て自分で考えるクセ付けろよ
2022/10/08(土) 04:33:12.20ID:mD5W1gnQ0
wikiも内容が分かりにくいんだよね
2022/10/08(土) 13:33:27.54ID:r+v8f2dF0
altキーでIMEの切り替え(かなと英字)って出来ないでしょうか?
左altで英字 右altでかな のようなものは先人の方がいるのですが、alt1つでのIME切り替えが調べても出てこず…
宜しくお願いします。
2022/10/08(土) 14:10:19.40ID:wgufoeKZ0
IME_SET(!IME_GET())
IMEトグル自体は↑でいける(要 IME.ahkインクルード)
https://w.atwiki.jp/eamat/pages/17.html

ただしaltをトリガーにするのは最近のwindowsでは難が出る可能性あり
alt-ime-ahkなどのソースを参考に工夫するといいよ
2022/10/08(土) 14:31:22.62ID:zHQr5LKD0
AutoHotkeyの基本中の基本機能を理解してれば余計な事せず一行で済むと思うんだが…
やりたいこと違ってたらスマン
2022/10/08(土) 14:34:57.31ID:zHQr5LKD0
>>59
>余計な事せず
この表現は悪かった
特別な事せず に訂正
2022/10/09(日) 03:07:24.78ID:QnWuAlr/0
「英数」キーのVKを使えば、ANSIでもJISでもイケるよね?
Alt::Send,{VKF0}
2022/10/10(月) 15:29:08.39ID:lzWY/cPe01010
>>58
IME_SETでいけますかね
altキーの他のキーと組み合わせた時はちゃんと動作してほしいです
2022/10/10(月) 19:16:09.54ID:FnI1IryF01010
IMEのON/OFF自体はIME_SET()でも>61でもいける
altの挙動は工夫しないとだめ
2022/10/10(月) 21:03:24.42ID:YhwK7IiZ01010
ああ>>61じゃ「英数」に変換されちゃって、Alt修飾が一切不可になるのか

レジストリでAlt→F24に変換し、AutoHotKeyは
F24::Send,{VKF0}
とかで回避せんとダメだね
2022/10/10(月) 22:08:16.33ID:m8oS8Phr0
文字入力するときの、入力カーソルの場所って取得できる?

Google日本語入力みたいに。
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

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