AutoHotkey スレッド part26at SOFTWARE
AutoHotkey スレッド part26 - 暇つぶし2ch209:名無しさん@お腹いっぱい。
18/06/12 22:45:48.29 BneWZD2B0.net
tooltipの代わりになるProgress
URLリンク(qiita.com)

210:名無しさん@お腹いっぱい。
18/06/12 22:50:27.00 4hgE51+C0.net
>>203
ToolTipは消さなければずっと表示されるだろ
sleepなんて要らねえよ
まず使って試してから発言しろよ

211:名無しさん@お腹いっぱい。
18/06/12 23:11:09.23 +E5cZsHs0.net
>>203l
ToolTipの仕様から説明するのは面倒だから省略したけど、>>205の人が言うように別に表示時間を
伸ばすためにsleepを入れたわけじゃないよ
表示されっぱなしでいいなら特にスクリプトを止める要素も無い

212:名無しさん@お腹いっぱい。
18/06/13 02:00:44.69 kee9CeXG0.net
>>205
試してから言ったんだが。
謝れよ

213:名無しさん@お腹いっぱい。
18/06/13 02:16:04.10 WE+4cSWn0.net
>>207が勘違いで無礼な口をききまして誠に申し訳ございませんでした

214:名無しさん@お腹いっぱい。
18/06/13 02:16:27.04 kee9CeXG0.net
うちの環境だとToolTipだけだと表示なにもされない。
sleepいれた複数行だとはじめてツールチップが表示される。
なにこれ。なにが作用してんの。ツールチップちっちゃくて色薄いし身づらい~
SplashTextOnでタイトルのみってシンプルでいいかなと思ったけど、表示位置変えられないっぽいのが
がっかり。
204のサンプルgif?が良さげなんで見てみます。ちょっとむずいのかな

215:名無しさん@お腹いっぱい。
18/06/13 03:24:33.08 ijaZStKH0.net
>>207
じゃあ実際に試したそのスクリプトを貼ってみろよ
本当に試していたら
>ToolTipって文字が小さいしすぐに消えるイメージがあって
こんなアホなことは絶対書かないし「


216:イメージ」だけで喋らない 謝れよ



217:名無しさん@お腹いっぱい。
18/06/13 03:41:39.87 ijaZStKH0.net
どうせ常駐しないスクリプトで一瞬で終了して「すぐ消える」とか言ってるアホなんだろうな

218:名無しさん@お腹いっぱい。
18/06/13 09:02:55.61 kee9CeXG0.net
>>210
202だよ
あの時点のカキコミでは>>202をおれのやりたいスクリプトのなかにコピペしてやってた。
それを証明しろってか。アホ。
>こんなアホなことは絶対書かないし
探偵くんの絶対っていう決めつけですか?(笑)
イメージがあるっておれがちょこっと言っただけで
"絶対"イメージ"だけ"でやらずに書いたことにおまえの中では確定するんですね。素敵。
おまえこそ決めつけですぐ書き込んだことについてとにかくはやく謝れよ
アホ

219:名無しさん@お腹いっぱい。
18/06/13 09:50:19.13 gPo1rC530.net
あんまり関わりたくないが…
>>209
>うちの環境だとToolTipだけだと表示なにもされない。
>>202の4行スクリプトをsleep抜きで実行すれば当たり前
>SplashTextOnで ~ 表示位置変えられないっぽいのががっかり。
ToolTipに関しても言えるがネット上に日本語リファレンスあるんだから、ちゃんと読んだ上でそこにあるサンプルスクリプトも試せ

220:名無しさん@お腹いっぱい。
18/06/13 10:12:00.75 77WhG2kh0.net
Googleさんに質問をぶつける方が早いよね。

221:名無しさん@お腹いっぱい。
18/06/13 10:18:06.86 fhWlT+8OH.net
>>212
馬鹿に高度な要求をしてすみませんでした
あなたでも理解できるくらい低レベルな説明をするのはぼくには無理です
許してください

222:名無しさん@お腹いっぱい。
18/06/13 10:32:09.90 WE+4cSWn0.net
回答者にダメ出しするクズ質問者を最近各地でやたらと見かけるんだが流行りなのかね

223:名無しさん@お腹いっぱい。
18/06/13 10:54:40.84 kee9CeXG0.net
もう結構です。解決しましたので209とかにこれ以上回答しないでください。
210のアホは除いて。
>>212
許すもなにもだれだか知らんが悔しかったのか?しょうもない内容ない最後っ屁のレスしやがって。
二度と俺にレスするな

224:名無しさん@お腹いっぱい。
18/06/13 11:06:01.84 Hz7oGYjX0.net
>>212
~LButton::
ToolTip, 謝れよ
Return

225:名無しさん@お腹いっぱい。
18/06/13 11:16:45.49 fhWlT+8OH.net
>>217
悔しそうな最後っ屁レスのいい見本を見せていただきありがとうございます
これからは気をつけます

226:名無しさん@お腹いっぱい。
18/06/13 11:29:50.63 lZPXjxk30.net
久々に伸びてると思ったら…
>>218 見て和んだからよしとするか
AutoHotkeyスレ的にはこうあって欲しいな

227:名無しさん@お腹いっぱい。
18/06/13 12:29:15.56 WE+4cSWn0.net
NGEx Tooltip, 謝れよ君@AHK
対象タイトル [含む] [AutoHotkey]
NG Name [含む] [09]
こういう子はしれっと何度でも来やがるので二度とレスしないで済むようあぼ~ん規則置いときますね

228:名無しさん@お腹いっぱい。
18/06/13 17:03:30.85 YzLKE9Rd0.net
アクティブウインドウ以外を最小化したいです。
WinMinimizeAllとWinRestoreでほぼいけるんですが、一瞬アクティブウインドウも最小化されるのが難点です。
なにかいい方法ありませんか?

229:名無しさん@お腹いっぱい。
18/06/13 17:09:56.55 H3aXWF370.net
Send, #{Home}

230:名無しさん@お腹いっぱい。
18/06/13 17:33:45.70 YzLKE9Rd0.net
そういやあったな
前試したとき使えなかったけど、Windows10 スナップ機能を無効にしてたのが原因だったみたいだわ

231:名無しさん@お腹いっぱい。
18/06/13 19:06:33.60 /1MllKIW0.net
FileReadLineで10行目を読み取って、ヒットした文字列をRegExMatchで検索する所まで来ました。
しかし指定行に書き加える所がわかりません。
FileReadLine, HAGE, HAGE.txt, 10
If (RegExMatch(HAGE,"FUSA"))
{
---指定行に書き加えるこの部分がわかりません---- StringReplace?
FileDelete, HAGE.txt
FileAppend, %FUSA%, HAGE.txt
}

232:名無しさん@お腹いっぱい。
18/06/14 00:20:21.09 Z2OsG3OR0.net
もう何年もバージョンアップしてなかったと思ったら
仕様変え過ぎだろ


233:名無しさん@お腹いっぱい。
18/06/14 01:24:39.75 PHfD01XQ0.net
>>226
>もう何年もバージョンアップしてなかった
いやそんなこと無いだろ
お前が情弱なだけで

234:名無しさん@お腹いっぱい。
18/06/14 08:01:25.30 xpUFTmrw0.net
vk sc 以外に何か大きな変更ってあった?

235:名無しさん@お腹いっぱい。
18/06/14 10:45:44.95 kRIw/nNl0.net
便利そうなオカン
henkan_group_winchanger()
{
 IfWinActive,ahk_exe calc.exe
 {
  IfWinExist, ahk_exe notepad.exe
   WinActivate
  return
 }
 IfWinActive,ahk_exe notepad.exe
 {
  IfWinExist, ahk_exe wmplayer.exe
   WinActivate
  return
 }
 
 IfWinActive,ahk_exe wmplayer.exe
 {
  IfWinExist, ahk_exe calc.exe
   WinActivate
  return
 }
}
; 関連ありそうなアプリ間でのみウィンドウを切り替える
sc79 & tab:: henkan_group_winchanger()

236:名無しさん@お腹いっぱい。
18/06/14 11:08:57.90 YPXm0M8Y0.net
GroupAdd & GroupActivate でよくね?

237:名無しさん@お腹いっぱい。
18/06/15 00:01:26.94 H2S0dOu+H.net
アプデするたびになにかしら問題でるのはなんなの

238:名無しさん@お腹いっぱい。
18/06/15 00:08:24.69 qL05x0j60.net
じゃあアプデしなければ良いのでは?

239:名無しさん@お腹いっぱい。
18/06/15 15:46:40.65 TM0zxQ290.net
v1.1.24.01安定

240:名無しさん@お腹いっぱい。
18/06/16 15:55:40.54 G06nkSYx0.net
最近ネタ切れ気味なので、
みなさんのおすすめのネタ、小ネタ、関数、スクリプト、連携ツールなどの投下待ってます!^^
■用途
.     メイン│キー割り当て変更…タップ/複数タップ/長押し
ホットキーランチャー│プログラム起動…メーラー/ブラウザ/エディタ
    自動化│キーボード操作
.        │マウス操作
 選択文字列│WEB検索…ウェブ/画像/動画/Wiki/2ch/地図/翻訳
.        │FILE検索 ※Everythingと連携
.        │プログラム起動…関連付け/エディタ/ファイラー
.        │置換…環境変数/レジストリ/日付表記/年表記/3桁ごとにコンマ
.        │修飾
.        │変換…文字種/URLエンデコ/進数
.        │計算
.  ウィンドウ│タスク切替
.        │移動/リサイズ
.        │最前面化
.        │全面化
.        │どこでもドラッグ
.        │シェード
.        │タイトルバー非表示
.        │メニューバー非表示
.    マウス│マウスジェスチャー[MouseGestureL.ahk]
.        │ホイールリダイレクト ※Win10デフォ
.        │カーソル非表示
.     取得│コマンドID(wParam)
.        │カラーピッカー(RGB)

241:名無しさん@お腹いっぱい。
18/06/16 15:56:33.90 G06nkSYx0.net
.   タイマー│IME
.        │自動クリック
.        │最前面化
.        │プログラム…起動/終了
.        │優先度変更…アクティブ時/非アクティブ時
    その他│クリップボード拡張[Clipboard History]
.        │サウンド…音量調整/ミュート/デバイス切替
■関数
ΘIME.ahk…IME制御用 関数群 URLリンク(www6.atwiki.jp)
ΘSwitchTask.ahk…タスク切替 URLリンク(blog.livedoor.jp)
ΘTray_Refresh()…タスクトレイリフレッシュ URLリンク(autohotkey.com)
ΘUrlEncode()…URLエンコード(Shift_JIS/UTF-8) スレリンク(software板:235番)
■スクリプト
□常駐
ΘClipboard History…クリップボード拡張 URLリンク(www.vector.co.jp)


242:.html ΘMouseGestureL.ahk…マウスジェスチャー ttp://www.vector.co.jp/soft/winnt/util/se498500.html ΘWheelScroll.ahk…ホイールリダイレクト ttp://www6.atwiki.jp/eamat/pages/30.html Θカーソル非表示 ttp://anago.2ch.net/test/read.cgi/software/1398655195/807 Θどこでもドラッグ ttp://autohotkey.com/board/topic/25106-altlbutton-window-dragging/#entry256906 □非常駐 ΘコマンドID(wParam)取得 ttp://autohotkey.com/board/topic/19754-get-info-from-context-menu/#entry130297 ■連携ツール ΘApp=Device…サウンドデバイス切替 ttp://www.vector.co.jp/soft/winnt/art/se486862.html ΘEverything…ファイル検索 ttp://www.voidtools.com/ ΘTablacus Script Control 64…計算 ※64bitOS ttp://www.eonet.ne.jp/~gakana/tablacus/scriptcontrol.html Θue…WEB検索 ttp://www.axfc.net/u/3902154 Θue2clip…URLエンコード ttp://www.axfc.net/u/3902154



243:名無しさん@お腹いっぱい。
18/06/17 02:49:17.37 LEHoSucJ0.net
乙。
一覧になってみると、特別な事はしてないなと再確認。
どれも上記の組合せに過ぎないとゆーか、連係するソフトウェアの理解度が重要だったり。

244:チラ裏
18/06/17 08:06:16.82 YAxRdcxB0.net
小ネタ
ΘPrintScreenキーで情報取得 URLリンク(pastebin.com)
Θタイトルバー上アクション URLリンク(pastebin.com)
  Shift+左…シェード
 左ダブル…ポップアップメニュー(menuHackerモドキ)
未完のおま環オナニースクリプトのため、ご興味のある方のみどうぞ!^^

245:名無しさん@お腹いっぱい。
18/06/18 15:11:26.39 esoE5FB60.net
タブ単位ではなくてブラウザ単位でミュート/解除する.ahkファイルなどありませんか?
URLリンク(gist.github.com)
でそれらしいのをみつけたのですが、どこにミュートさせたいブラウザを指定するのかわかりません。
最初^!Mを一度押すとボリュームミキサーがでてくるようですが、2回目同じキーを押してもボリュームミキサー出てきません
クリックでミュートするのではなくランチャーなどに.ahkファイルを登録させてそれの起動ですぐブラウザ単位のミュートがしたいです。

246:名無しさん@お腹いっぱい。
18/06/18 16:43:17.63 +42gcIGk0.net
こないだの謝れよ君か
また暴れられると面倒だから答えは書かないけど修正3ケ所で行けたわ
なかなか便利なスクリプトやな

247:名無しさん@お腹いっぱい。
18/06/18 16:48:32.62 esoE5FB60.net
>>239
なんでわかるの

248:名無しさん@お腹いっぱい。
18/06/18 16:51:57.87 AKI8Z7dt0.net
いつもお前を見ているぞ

   <◎>  <◎>
 

249:名無しさん@お腹いっぱい。
18/06/18 18:58:13.38 81hwV4880.net
>>238さんの使い方なら
Θ7行目を変更「VolumeMixer = 音量ミキサー」
Θ15行目に追記
 Sleipnirなら「MuteApps("Sleipnir")」
 Chromeなら「MuteApps("Chrome")」
 など
で、大丈夫だと思います^^

250:名無しさん@お腹いっぱい。
18/06/18 19:04:41.30 81hwV4880.net
すいません追加で
Θファイル末に追記「ExitApp」

251:名無しさん@お腹いっぱい。
18/06/18 19:06:07.93 cw6YxUPa0.net
>>242-243
空気読めよ

252:名無しさん@お腹いっぱい。
18/06/18 20:20:35.98 81hwV4880.net
Θ15行目を「MuteApps(A_Args[1])」
でファイルを作成し、ランチャーなどで下記コマンド実行の方がいいかも^^
Θコマンド
 Sleipnirなら「hoge.ahk "Sleipnir"」
 Chromeなら「hoge.ahk "Chrome"」
 など

253:名無しさん@お腹いっぱい。
18/06/18 20:35:02.11 3UPizNgs0.net
>>245
んなこと誰も聞いてない

254:名無しさん@お腹いっぱい。
18/06/18 20:48:26.20 esoE5FB60.net
>>242
おしえてくださってありがとうございました。
助かりました。
わたしに教えてはいけないというノリにしたいヤカラがいるので反発がありますね ^ ^

255:名無しさん@お腹いっぱい。
18/06/18 21:04:04.08 +n8z2HMA0.net
教えて君五大要素
1. 読�


256:ワない 2. 調べない 3. 試さない 4. 理解力が足りない 5. 人を利用することしか頭にない



257:名無しさん@お腹いっぱい。
18/06/18 21:36:47.91 /Bs4ggs+M.net
ワッチョイ 3e91-m0US
>234 も大概うざいと思ってたがこれは酷い
己の承認要求満たすことが最重要なタイプか

258:名無しさん@お腹いっぱい。
18/06/18 21:47:21.51 E7KH139L0.net
>>249
スルーできずにレス付けちゃうお前も同類だぞ

259:名無しさん@お腹いっぱい。
18/06/19 00:03:00.21 5mFe2tNK0.net
3e91-m0US は黙認したらダメなタイプ
スルー対象は 謝れよ君のほう

260:名無しさん@お腹いっぱい。
18/06/19 00:16:49.96 q0WAzgGW0.net
承認欲求はレスされることで満たされるんだから黙ってあぼーんしとけばいい

261:名無しさん@お腹いっぱい。
18/06/19 00:52:17.09 OxIVLmPa0.net
タスクトレイ右にあるソフトウェアを右クリックしてそのメニューの上から二番目をクリックする、
といった動作をAutohotkeyですることはできるんでしょうか?
昔そういう単機能のソフトウェアがあったように思うのですが忘れてしまいました。
>>251 地獄に落ちろ

262:名無しさん@お腹いっぱい。
18/06/19 01:19:12.88 zvqTkEbA0.net
>>253
TrayCommand
URLリンク(hp.vector.co.jp)
ソフトはこれでしょ

263:名無しさん@お腹いっぱい。
18/06/19 01:29:58.37 /YJKKxwR0.net
>>254
空気読めよ

264:名無しさん@お腹いっぱい。
18/06/19 02:00:08.76 m0Y+Gbe+0.net
>>253
URLリンク(pastebin.com)

265:名無しさん@お腹いっぱい。
18/06/19 13:55:13.23 0cmVsDTa0.net
SoundBeep有能
SoundBeep,400,25 ; 何かが無効になったときに鳴らす
SoundBeep,1000,25 ; 何かが有効になったときに鳴らす
とりあえずIME ON/OFFやその他に組み込んでみたが安心感が増す
人前ではうるさくて使えないだろうが
これのLEDバージョン作ってみたいがプログラマブルUSB LEDって2万とかするんだな…
300円位でないのか

266:名無しさん@お腹いっぱい。
18/06/19 14:06:01.56 8FWyy9TaH.net
Arduinoで作れんじゃね?
3000円ぐらいはかかりそうだけど

267:名無しさん@お腹いっぱい。
18/06/19 17:10:38.43 42EnPnsg0.net
ラズパイは?

268:名無しさん@お腹いっぱい。
18/06/20 07:37:19.98 ha/OsVg60.net
IE11でボタンをクリックした後、反応の有無を判断できる方法はありますか?
クリック→無反応→クリック…roop
クリック→反応有→roop break
想定している似たような状況は、ビジー状態の通販サイトの「商品カゴへ入れる」ボタンを成功するまでクリックする。
OS:Windows10(1803) Pro 64bit
AutoHotkey(x64) 1.1.29.01

269:名無しさん@お腹いっぱい。
18/06/20 12:08:36.98 W9QYsAxV0.net
>>260
クリックに成功した場合ボタンの表示が変わる、もしくは何かの表示が出るのならImageSearchで行けるんじゃないかね

270:260
18/06/20 16:07:09.18 ha/OsVg60.net
>>261
レスありがとうございます。
表示は変わりませんが、特徴的な音が出ます。
表示の変化に関して指摘して頂いたので、Sound関係の変化に関してコマンドを探してみましたが、使えそうなのがないです。

271:名無しさん@お腹いっぱい。
18/06/20 16:45:56.19 K//20RcR0.net
判断する方法ではないけど
ボタンを押してから離すまでの時間を長くすれば反応するようになるのでは?
SendならSetkeydelayで
Setkeydelay,100,200
もしくは
send,{left down}
sleep,200
send,{left up}
clickなら
click,left,down
sleep,200
click,left,up

272:260
18/06/20 17:37:47.93 ha/OsVg60.net
>>263
レスありがとうございます。
試してみます。
ただ、ビジー状態に対応できるスクリプトを組みたいので、サイトがビジー状態でないと試せません。
報告は早くて数日後になります。

273:名無しさん@お腹いっぱい。
18/06/21 04:48:21


274:.38 ID:AY8E+xgd0.net



275:260
18/06/21 13:46:05.91 uo6bOHK00.net
>>265
いえ、ブラウザは固まってる状態です。
その状態で酷い時は、数秒に一度、一瞬クリックできる状態になる時があって、その隙にクリックしたいのです。

276:名無しさん@お腹いっぱい。
18/06/21 15:01:33.74 VVK4xcOd0.net
ポップアップメニューを表示して戻り値にキーを返す関数
URLリンク(paste.ofcode.org)
testcode()
{
menu=
(
ファイル(&F)
編集(&E)
検索(&S)
終了
)
ret := ShowPopupMenu(menu)
if ret=F
msgbox,ファイル処理
if ret=E
msgbox,編集処理
if ret=S
msgbox,検索処理
if ret=5 ; &がない場合は数値で返す
msgbox,終了処理
if ret=
msgbox,キャンセルされた
}

277:名無しさん@お腹いっぱい。
18/06/21 16:23:27.41 5cOpvXIJ0.net
>>264
詳しくないけどIEにぶん投げて、ComObjCreate("InternetExplorer.Application")から.ReadyStateでページ表示の完了状態を調べるとかは?
無理にahkでやる案件でもないような気がするけど

278:名無しさん@お腹いっぱい。
18/06/22 14:32:53.34 ugMFpfsi0.net
ControlGet SysListView321を使って、値を取得することは出来ます。
逆に、SysListView321に値をセットすることは出来ませんか。 ゲットした値の一部を変更したいのですが

279:260
18/06/22 21:12:40.61 PUo1zf840.net
>>268
確かにIEの操作はAHKでやるより、IEから直接の方が確実なような気がしますね…。
>>263
少しスリープの時間を長めにしましたが、軽いビジー状態なら結構いけますね。
正直、長押しでいけるとは思ってもいませんでしたからびっくりしました。
とりあえず、長押しでしのいで、将来的にはVBAでIEを直接操作する方向で考えたいと思います。
予定していた方法とは異なりますが、そこそこどうにかなりそうなので、これで締め切らせて頂きます。
皆さんありがとうございました(o*。_。)oペコッ

280:名無しさん@お腹いっぱい。
18/06/23 07:17:36.20 0OH7ylO90.net
ヒアドキュメントがあまりにも見づらいのでクラスにしてみた
m.Add("ファイル(&F)")

m.Add,ファイル(&F)
とは書けないのな
URLリンク(textuploader.com)
testcode2()
{
m:=new PopupMenu()
m.Add("ファイル(&F)")
m.Add("編集(&E)")
m.Add("検索(&S)")
m.Add()
m.Add("終了")
ret := m.Show()
msgbox,% "ret=" ret
}

281:名無しさん@お腹いっぱい。
18/06/23 22:27:36.89 Ztr4TmAR0.net
>>271
>>1に「Autohotkey専用うpろだ」紹介されてるんだから、以降そっちでやってね

282:名無しさん@お腹いっぱい。
18/06/24 01:05:16.40 gl6IIcaZ0.net
ちなみにAHK v2のMenuはまさにそんな感じ
URLリンク(lexikos.github.io)

283:名無しさん@お腹いっぱい。
18/06/27 17:27:43.88 hg8rqnbu0.net
iniwriteの時に書き込む値にカンマがあった場合はどうすればいいのでしょうか?

284:名無しさん@お腹いっぱい。
18/06/27 17:32:41.64 0iRb2wcH0.net
エスケープするor変数に入れる

285:名無しさん@お腹いっぱい。
18/06/27 18:25:58.86 hg8rqnbu0.net
hensuu = 111,aaa,222,bbb
iniwrite, %hensuu%, test.ini, test, test
iniwrite, 111`,aaa`,222`,bbb, test.ini, test, test
こんな事が出来るなんて知りませんでした。
どちらでもできました、ありがとうございます。

286:名無しさん@お腹いっぱい。
18/07/02 03:06:06.99 g0LGh7eu0.net
ATOKの日付変換が便利なんだけど、使いたいフォーマットがない。
例えば "yyyy_mmdd" とか。
now対象だけならahkで作れそうなきがするけど、ATOKみたく「あした」「あさって」とか
「げつようび」とかで、前後の日をサポートするとなると大変そう。
こんな日付変換に対応したものってありますか?

287:名無しさん@お腹いっぱい。
18/07/02 08:08:57.58 obbanbrL0.net
別のスクリプト同士で変数をやり取りする方法はありませんか?
情報をやり取りするためのファイルに書き込んでおき、
別のスクリプトで読み込むしかないでしょうか?

288:名無しさん@お腹いっぱい。
18/07/02 10:28:37.55 2sJUYxCT0.net
>>277
URLリンク(ahkwiki.net)
::nitiyoubi::
SUNDAY=1
send,% DateCalc(SUNDAY-A_WDay,"yyyy-MMdd")
return
DateCalc(offset,format) {
TimeStamp := A_Now
TimeStamp += %offset%, Days
FormatTime,TimeStamp,%TimeStamp%,%format%
return TimeStamp
}
>>278
URLリンク(ahkwiki.net)()

289:名無しさん@お腹いっぱい。
18/07/02 12:22:32.02 obbanbrL0.net
>>279
サンクスコ助かりました

290:名無しさん@お腹いっぱい。
18/07/02 13:08:15.58 YBwm2/8CH.net
>>279
わぁ、作っていただけるなんて。
ありがとうございます。
これを元にメニュー化してみます。

291:名無しさん@お腹いっぱい。
18/07/07 02:08:28.79 qwGCuEP30.net
GUIで使われるデフォルトのフォントはコレであっていますか?
分かる人いたらお願いします。
OS日本語 MS UI Gothic (win7で確認、win10も同じ?)
OS英語 MS Sans Serif?

292:名無しさん@お腹いっぱい。
18/07/07 08:53:40.58 OoZZ3/qe00707.net
>>282
ググればわかることだが両方違う
win7はメイリオ、win10は遊ゴシック系
URLリンク(www.atmarkit.co.jp)
英語版OSは Segoe UI
URLリンク(ja.m.wikipedia.org)

293:名無しさん@お腹いっぱい。
18/07/07 09:50:28.34 qwGCuEP300707.net
>>283
言葉足らずでした、AHKのGUIコマンドの話です
原文のリファレンスを読むとデフォルトはGetStockObjectのDEFAULT_GUI_FONTの事だとは思うのですが
他環境のフォント情報がなかなか見つからず質問した次第です

> Omit the last two parameters to restore the font to the system's default GUI typeface, size, and color.
Gui, Font,, メイリオ
Gui, Add, Text,, あいうえおABCDEabcde (メイリオ)
Gui, Font,, MS UI Gothic
Gui, Add, Text,, あいうえおABCDEabcde (MS UI Gothic)
A_GuiFont := GuiDefaultFont()
A_GuiFontSize := A_LastError
Gui, Font
Gui, Add, Text,, %A_GuiFont%`t%A_GuiFontSize% (デフォルト)
Gui Show
Return
GuiDefaultFont() { ; By SKAN www.autohotkey.com/forum/viewtopic.php?p=465438#465438
hFont := DllCall( "GetStockObject", UInt,17 ) ; DEFAULT_GUI_FONT
VarSetCapacity( LF, szLF := 60*( A_IsUnicode ? 2:1 ) )
DllCall("GetObject", UInt,hFont, Int,szLF, UInt,&LF )
hDC := DllCall( "GetDC", UInt,hwnd ), DPI := DllCall( "GetDeviceCaps", UInt,hDC, Int,90 )
DllCall( "ReleaseDC", Int,0, UInt,hDC ), S := Round( ( -NumGet( LF,0,"Int" )*72 ) / DPI )
Return DllCall( "MulDiv",Int,&LF+28, Int,1,Int,1, Str ), DllCall( "SetLastError", UInt,S )
}

294:名無しさん@お腹いっぱい。
18/07/07 11:20:45.04 OoZZ3/qe00707.net
失礼
win10も MS UI Gothic だったよ

295:282
18/07/08 18:55:55.14 jnfyQm1X0.net
ありがとうございました
他のフォント情報も見つけることができました
URLリンク(msdn.microsoft.com)(v=vs.110).aspx

296:名無しさん@お腹いっぱい。
18/07/14 00:28:43.55 c9o5o3bi0.net
「コントロール+クリック」を「無変換+クリック」に割り当てられるといいんだけどな@あ

297:名無しさん@お腹いっぱい。
18/07/14 00:33:52.87 wrBaH4zb0.net
割り当てられますけど

298:名無しさん@お腹いっぱい。
18/07/14 07:29:02.66 TH1SIGBe0.net
>>287
失敗した書き方はどんな感じ?

299:名無しさん@お腹いっぱい。
18/07/15 09:50:14.97 bqpX/mGQ0.net
関数内でループをさせて、そのループのA_indexを使ったことをさせたいんですが、A_indexを使ったことというのを関数内で何度も使うのでその記述を簡略化したいんですが
どうすればいいですかね?やりたことは下記のようなことなんですが、labelとgosubで動くものなのかがよくわからないでいます
test()
{
loop,10
{
label:
tooltip,%A_index%
return
gosub,label
sleep,500
gosub,label
sleep,500
gosub,label
sleep,500
}
return
}

300:名無しさん@お腹いっぱい。
18/07/15 20:19:37.01 we5y7DJBM.net
関数内でもラベルは使えるけどサブルーチンは無理
そのコードだとtooltipの下のreturnで関数ごと抜けてしまうよ

301:名無しさん@お腹いっぱい。
18/07/15 21:19:24.01 p+q5mhPf0.net
>>290
サブルーチン部分をloop外に出せば動くとは思うが、正直何をしたいかよく分からん
同じA_indexで同じ処理を3回してるから、その部分をloopで回せば簡略化できると思うが…
test() {
loop,10 {
count := A_index
loop,3 {
gosub,label
sleep,500
}
}
return
label:
tooltip,%count%
return
}
長いので次レスで

302:名無しさん@お腹いっぱい。
18/07/15 21:19:59.91 p+q5mhPf0.net
続き
それとも、こんなことか?
test() {
loop,10 {
gosub, label1
gosub, label2
gosub, label3
}
return
label1:
tooltip,%A_index%
sleep,500
tooltip,
return
label2:
MsgBox,%A_index%
sleep,500
return
label3:
Clipboard := A_index
MsgBox,Clipboard は %Clipboard%
sleep,500
return
}
以上、かなり適当

303:名無しさん@お腹いっぱい。
18/07/15 21:21:21.92 p+q5mhPf0.net
>>293
かなり見づらくてスンマソン

304:名無しさん@お腹いっぱい。
18/07/18 16:42:54.30 trYB5odT0.net
290 ですが返事がおそくなってすみません。
結局loopでlabel部分をループさせました。ありがとうございました。

305:名無しさん@お腹いっぱい。
18/07/20 14:55:17.40 2RsjRDqU0.net
win7から10へマシン変えようか考えてますが
ahkスクリプトは相当書き換える必要あるのでしょうか? 今あらゆる作業でずいぶん頼ってるのでそこが悩みどころでして

306:名無しさん@お腹いっぱい。
18/07/20 15:09:10.38 wv55im470.net
>>296
もしWin7のUAC設定を一番下にしてオフにしてるならばWin10に移行後にUAC絡みで気を付ける必要があるかも
Win7ではUAC一番下にするだけでほぼ機能しなくなるけどWin10では一番下にしても完全にはオフにならないので
必要に応じてスクリプトを管理者権限で実行したり、標準権限で実行したりを気を付けなきゃならない
元からWin7でUACオンにして使ってるなら特に使い勝手は変わらないと思う

307:名無しさん@お腹いっぱい。
18/07/20 16:04:35.24 2RsjRDqU0.net
>>297
ありがとうございました!ユーザーアカウントというあたりは元々ぜんぜんいじってないです。
スクリプトそのまま移行して使い続けられそうでホッとしてます

308:名無しさん@お腹いっぱい。
18/07/20 16:20:15.17 IY43ug2o0.net
>>296
自分はahk以外にもWSHやAutoItも使ってるので参考になるか分からないが…
スクリプトでレジストリにアクセスしようとしてもブロックされまともに動かなかったので、
[HKEY_LOCAL_MACHINE\SOFTWAR


309:E\Microsoft\Windows\CurrentVersion\Policies\System] の"EnableLUA"=dword:00000001 → "EnableLUA"=dword:00000000 にしてUACを無効化した 自分はwin7 32bitからwin10 64bitにしたけど、特に大掛かりなスクリプトの書き換えはしなかったような気がするが、 win7時代に動いていたスクリプトがwin10で動かなくなったのはあったな このスレにあったヤツだったか忘れたが、ウインドウに穴開けてデスクトップを見るスクリプトだった 他人作だし使う機会も少なかったのでもう使用はしていない…



310:名無しさん@お腹いっぱい。
18/07/20 20:57:51.00 GOaXWtHw0.net
無理矢理UAC完全無効化はストアアプリに不具合出るしMS的にはストアアプリ推しだから
将来的に大きなトラブルになる可能性もある

311:名無しさん@お腹いっぱい。
18/07/20 21:09:21.49 9LPAAB/e0.net
UAC無効化しなくてもUI Access有効化でよくない?

312:名無しさん@お腹いっぱい。
18/07/20 23:46:35.78 IY43ug2o0.net
情報サンクス
>>300
>ストアアプリに不具合出るしMS的にはストアアプリ推し
自分としては別に使う気はないからどうでも良いかなぁ
win10使う上で必須のアプリがあるなら考えるけども…
>>301
UI Access っつうのちょっと調べた限りでは、フォルダ限定される?
自分はCドライブにソフトやスクリプトは殆ど置かないので、UI Access有効化は余り意味がないかもしれない

313:名無しさん@お腹いっぱい。
18/07/22 10:19:40.82 OCDGBqGi0.net
なぜ日本語wikiのキーリストで
変換:vk1Csc079のように記載されているのでしょうか?
実際,スクリプトにはvk1Cと記載しないと動きませんよね?
誤解を招くような気がする(実際に自分も戸惑った)のですが,これにはなにか理由があるのですか?

314:名無しさん@お腹いっぱい。
18/07/22 10:58:23.54 AMD77juC0.net
>>303
v1.1.24まではvc○○sc○○の記述が可能だった
v1.1.27で修正されてvk○○またはsc○○の片方しか記述出来なくなった
v1.1.28で以前の仕様(vc○○sc○○が可能)に戻ったらしいけど
俺はv1.1.24からアップデートしていないので未確認

315:名無しさん@お腹いっぱい。
18/07/23 21:15:15.12 M4VJIdNm0.net
いや、v1.1.28でも最新のv1.1.29.01でも「vk○○sc○○」の記述はエラー出ますよ
今も「vk○○」か「sc○○」の片方のみ可能なのでwikiを直さないと新規の人には分かりにくいだろうね

316:名無しさん@お腹いっぱい。
18/07/23 22:11:48.54 ionPQ2gz0.net
いろんな文法を認めている割に、これに関しては厳しくしたいっていうのが良く分からんね。

317:名無しさん@お腹いっぱい。
18/07/25 03:34:26.75 gZ0Se62R0.net
keyhacですが、tkinterは入れたままにして頂きたい!
その方がポータブル感が高まると思います。

318:名無しさん@お腹いっぱい。
18/07/25 04:35:30.78 XXshHs+p0.net
すいません質問させて下さい
URLリンク(superuser.com)
上のサイトのスクリプトはエクスプローラ上で同階層フォルダ間を移動するものですがあくまで英語圏のためのものであり
日本語のフォルダ名だとエクスプローラの表示順通りに移動できませんがどうすればいいでしょうか
Windows XP以降のソート順は特殊でShlwapi.dllのStrCmpLogicalW()というAPIを使う必要があるらしいのですが
Windows 7 64bit
Autohotkey(x64) v1.1.22.09

319:名無しさん@お腹いっぱい。
18/07/25 14:19:24.59 tDovQ0SL0.net
>>308
一旦兄弟フォルダを全部取得してからフォルダ名でソートすればいいんじゃないか、�


320:ニいうことで自分でも使用したいので作った Win10で動作確認 https://pastebin.com/sZVcY14F オリジナルに変更を加えた部分はある程度コメントを入れてあるので詳細はそっちで それと、親フォルダのソート状況を推察するのは難(*1)があるので、移動の順番は名前で昇順ソートされた状態を想定してる 別ウィンドウで親フォルダを日付や名前の降順でソートして表示していて、移動してみたら順番が違う!というのは諦めて (*1) 親フォルダのソート状況を推察できる状況 ・一つのエクスプローラーウィンドウで親フォルダを表示している 厳しいとき ・親フォルダを表示していない ・複数のウィンドウで親フォルダを開いていて、それぞれソート状況が異なる。(どちらを選択するのか?)



321:308
18/07/25 15:49:51.80 XXshHs+p0.net
>>309
質問者ですがwindows7でも動作確認しました
兄弟フォルダ間の移動なんて簡単て思ってたらとんでもなかったw
前提条件を認識した上で使わせてもらいます
ありがとうございました

322:名無しさん@お腹いっぱい。
18/07/26 17:12:06.86 t46bhQ3w0.net
URLリンク(pastebin.com)
よく分かってないけど>>309のスクリプトで最初と最後の兄弟フォルダにも移動したいときはこんな感じでいいのかな

323:名無しさん@お腹いっぱい。
18/07/28 17:20:36.99 pDAfKZEBM.net
こんなの聞くの申し訳ないんですがTrayTIpが動きやせん
調べでもわからなくて困った
windows10 1803 AHKL1.1.29.01(64bit)
#NotTrayIcon使用なし
全文が長くなるとTrayTIpがwin上で反映されない
LOGだと指令でてる&短い文でテストすると問題なし
コンパイルすると動いてたが更に全文長くしたらコンパイルしてもTrayTIpでない
うわーん

324:名無しさん@お腹いっぱい。
18/07/28 17:47:48.00 pDAfKZEBM.net
>>312
自己解決しました。win10の設定でAHKの通知取得がoffやった…
むしろなんで短いと通るのか不思議になりましたが
スレ汚しごめんなさい

325:名無しさん@お腹いっぱい。
18/07/31 02:10:13.15 GTD+3eTh0.net
下記サンプルコードではタスクバー上の空きスペースクリック時メニューが出てしまうので
メニューを出さずにアイコン上か空きスペースかの当たり判定ができましたら教えてください
■サンプルコード
中クリックでアプリ閉じ
問題点…空きスペースクリック時のメニュー
;タスクバー上
#If MouseIsOver("ahk_class Shell_TrayWnd", "MSTaskListWClass1")
 MButton::
  Send {RButton}
  Sleep, 250
  if WinExist("ジャンプ リスト ahk_class DV2ControlHost")
   Send {Up}{Enter}
  else
   Send {Esc}
 return
#If
MouseIsOver(WinTitle, ClassNN:="") {
 MouseGetPos,,, hWnd, ControlNN
return (!ClassNN ? WinExist(WinTitle " ahk_id " hWnd) <> 0 : WinExist(WinTitle " ahk_id " hWnd) && ClassNN = ControlNN)
}

326:314
18/08/01 01:43:23.52 tCZRzMJu0.net
サムネイル有無だとメニューは出ないがサムネイルがないとミスってしまう
SendMessageなどでの当たり判定や、そもそも閉じるのに右クリック→上→Enterではない案(AHKで)などありましたら教えてください
■サムネイル有無判定
Sleep, 250
if !WinExist("ahk_class TaskListThumbnailWnd")
 return

327:名無しさん@お腹いっぱい。
18/08/01 20:39:43.87 RFuZeACf0.net
タスクバー上でカーソル下がアイコンか空きスペースかの判定だけなら
Acc.ahk使えばすぐじゃないかな
Roleの値が違うはずだし

328:名無しさん@お腹いっぱい。
18/08/01 21:50:53.68 tCZRzMJu0.net
>>316さん
Acc_GetRole()関数利用で希望する動作になりました
今までACC.ahkはテンプレで紹介されているのは知っていましたが、用途が分からずインスコしていませんでした
めちゃ便利ですね。教えていただきありがとうございました

329:名無しさん@お腹いっぱい。
18/08/02 22:02:20.44 Ys9NGPTx0.net
Acc.ahkは使い方がわかればDoDefaultActionが便利だった
俺は分からず分かったのはUI Automationに手を出した後という

330:名無しさん@お腹いっぱい。
18/08/02 23:21:29.21 SOQUJBoF0.net
いまさらながらオミトロンのバイパス状態の見分け方が分かったので記念カキコ
;Proxomitron バイパス
1 Up::
 SavedDHW := A_DetectHiddenWindows
 DetectHiddenWindows, On
 ControlGet, BypassSt, Enabled,, Web ページ・フィルタ, ahk_class PrxTronCls
 BypassSt ? ToolTip("Bypass On") : ToolTip("Bypass Off")
 PostMessage, 0x111, 1007,,, ahk_class PrxTronCls
 DetectHiddenWindows, %SavedDHW%
return
;ToolTip() URLリンク(pastebin.com)

331:名無しさん@お腹いっぱい。
18/08/03 21:43:37.48 pHE6KlnQ0.net
Acc_GetName()で一般のコピーツールなどでは取得しにくいTreeView上のテキスト取得や
Acc_GetName()とAcc_GetRole()の併用でWM_NCHITTESTではだめなタイトルバーのボタン上の正確な位置判定など
あらためて教えていただいた>>316さんには感謝
ACC.ahk URLリンク(ux.getuploader.com) 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)


332:名無しさん@お腹いっぱい。
18/08/04 02:18:49.52 H2OE/J7G0.net
acc.ahkが便利そうなのでググったら日本語解説ページがなく
クルマのワーゲンの機能らしい
accはオートクルーズコントロールみたいなのだが
ahkはよくわからない
ムキになって検索しまくり
ようやくヒットする
BMWも搭載してるようで動画で確認
クルマの下からチンコがでてきた
違う!

333:名無しさん@お腹いっぱい。
18/08/04 20:08:36.57 mW/OGX1W0.net
>>320
なんか凄いツールですね
AccInfoViewer_kai.ahk を使ってみたところ
メモ帳のツールバーの 編集>貼り付け のところにカーソルを合わせると
Name : 貼り付け(P) Ctrl+V
Action : 実行
と出るのですが、この情報を使ってmouseclick AHKで 貼り付け を

334:名無しさん@お腹いっぱい。
18/08/04 20:11:05.28 mW/OGX1W0.net
すいません途中で送信してしまいました
>>320
なんか凄いツールですね
AccInfoViewer_kai.ahk を使ってみたところ
メモ帳のツールバーの 編集>貼り付け のところにカーソルを合わせると
Name : 貼り付け(P) Ctrl+V
Action : 実行
と出るのですが、この情報を使ってmouseclick を使わずに AHKで 貼り付け を
実行させることは可能でしょうか?
もしできるならどのように書けば良いのでしょうか?

335:名無しさん@お腹いっぱい。
18/08/04 22:48:25.99 KKkpi8nV0.net
自分が見つけたのは↓だけど、同じもの?
Acc library (MSAA) and AccViewer download links - AutoHotkey Community
URLリンク(autohotkey.com)
の「AccPack.zip」
URLリンク(autohotkey.com)
に含まれる「Acc.ahk」
あと、「COM.ahk」というのも同時に必要なのだろうか?
ここ↓のでOK?
COM Standard Library - Page 44 - Scripts and Functions - AutoHotkey Community
URLリンク(autohotkey.com)
検証もせず、レスしてスマソ

336:名無しさん@お腹いっぱい。
18/08/05 05:48:53.94 KjBFiGmx0.net
>>324
AccInfoViewer_kai.ahk 付属のACC.ahkについては
ダウンロードボタンの少し上のコメントに
フォーラム


337:で拾ったものって書いてあるよ



338:名無しさん@お腹いっぱい。
18/08/05 21:22:05.24 T6bMKT0H0.net
>>324
COM機能はいまは標準実装されているので不要
いつかはCOMが使えるようになりたいなぁ
>>320
> Acc_GetName()で一般のコピーツールなどでは取得しにくいTreeView上のテキスト取得や
と書いたけど、どこでもおもしろいほどテキスト取得できますね
いままでClipy、NNScanText、コピット!、CopitX使っていたけどおさらばしました

339:名無しさん@お腹いっぱい。
18/08/06 03:58:51.10 5wbNEfZL0.net
AHKでクラス使うときメソッド名のタイポがエラーにならないんだけど検出する方法ない?
これエラーにしてもらわないとつらすぎる

340:名無しさん@お腹いっぱい。
18/08/06 04:24:03.14 +DjLc0mw0.net
入力支援の利くエディタを使うしかないんじゃないかな…。
実行時に未定義のメソッドを呼んだときエラーを出すなら
class ErrorUndefineMethod
{
__Call(name)
{
throw Exception("This method is not defined." (name != "" ? " : " name : ": "), -1)
}
}
こんな感じの基底クラスを継承するなりすればいいけど、たぶん言ってるのはコーディング時の話だよね

341:名無しさん@お腹いっぱい。
18/08/08 16:55:10.42 Wo1vgWVl00808.net
google chromeでは、A_caretYでキャレット位置が取れないのですが、他になにか方法はないでしょうか?
ctrl-wにてタブ閉じは生かしつつ、入力シーンでは前単語削除に割り当てたいのですが…

342:名無しさん@お腹いっぱい。
18/08/08 18:35:25.42 byzIEboea0808.net
>>329
確実じゃ無いかもだけどIME.ahkの関数で取れる値が入力可能かどうかで変わると思う

343:名無しさん@お腹いっぱい。
18/08/08 20:06:38.93 Wo1vgWVl00808.net
>>330
ありがとうございます!
#if winactive(“ahk_exe chrome.exe”) && ime_getconvmode()
^w::send ^{bs}
return
上記、IME_GetConvMode()関数で分岐できました!
助かりました~

344:名無しさん@お腹いっぱい。
18/08/18 02:35:10.55 flWGLe7T0.net
r::send 7
このrを右クリックにしたいのですが何を入力すればいいのでしょうか
よろしく

345:名無しさん@お腹いっぱい。
18/08/18 03:23:00.41 aJSMzMBT0.net
>>332
wikiのキーリスト見なさい
マウスも書いてある

346:名無しさん@お腹いっぱい。
18/08/22 11:48:18.04 xeghXmwt0.net
ウインドウがAとBの2つあるとします。
Aをマウスでクリックしてアクティブにして
ControlClick, x100 y100
とすると、ウインドウAの100、100の位置をちゃんとクリックします。
ところが、ウインドウBをマウスでクリックしてからスクリプトで、
WinActivate, ウインドウのA
ControlClick, x100 y100
return
とすると、なぜかウインドウAの100、100の位置をクリックされません。また、リターンで戻るとウインドウBが
アクティブになっています。
WinActivate, ウインドウのA
MouseClick, left, 100, 100
とすればちゃんとクリックされます。また、ウインドウBがアクティブの状態で、
WinActivate, ウインドウのA
Sleep, 5000
ControlClick, x100 y100
return
とやってスリープ中にマウスでウインドウAを手動でアクティブにしてやってもダメです。なぜでしょうか。

347:名無しさん@お腹いっぱい。
18/08/22 12:00:43.76 xeghXmwt0.net
ちなみに、x100 y100のところにあるのはボタンなのですがそのボタンのClassNNを使って、
ControlClick, x100 y100
の代わりに
ControlClick, classNNの名前
でやってもダメでした。 ウインドウAを最初にアクティブにしてからなら問題ありません。

348:名無しさん@お腹いっぱい。
18/08/22 12:06:53.85 Tq1tthei0.net
試してないけど
WinActivateしただけじゃLast Found Windowが記録されないからじゃね
ControlClickは指定されたウィンドウをクリックするコマンド
必ずアクティブウィンドウをクリックするMouseClickとは違う
WinActivate, ウインドウのA
WinWaitActive, ウインドウのA ; ←ここでLast Found Windowを書き換える
ControlClick, x100 y100
もしくは
ControlClick, x100 y100, ウインドウのA ; ← 省略しないでウィンドウを指定する

349:名無しさん@お腹いっぱい。
18/08/22 12:23:41.78 xeghXmwt0.net
WinWaitActiveを入れて出来ました。
WinWaitActive�


350:ヘ一瞬で終わりました。 Sleep, 5000を入れてその間に手動でウインドウAをクリックしても出来なかったのがよくわかりませんが とりあえず、これで行くことにします。



351:名無しさん@お腹いっぱい。
18/08/22 12:25:05.21 xeghXmwt0.net
ああ、WinWaitActiveをしないと、WinActivateだけだと、どんなに時間がたっても
Last Found Windowは変わらないということですか

352:名無しさん@お腹いっぱい。
18/08/23 01:17:55.45 E69zRD1X0.net
youtubeのプレイヤー画面の座標を取得する方法はあるでしょうか?
最近youtubeの仕様が変わって再生する元動画のアスペクト比によってプレイヤー画面のの大きさも変化してしまい
プレイヤー内の設定ボタンなどの座標が動画ごとにずれてしまいます

353:名無しさん@お腹いっぱい。
18/08/23 09:54:48.67 jFzHledS0.net
Acc.ahkで座標は取得可能
もしかしたらDoDefaultAction使えるかもしれないけど確かめてない

354:名無しさん@お腹いっぱい。
18/08/23 11:02:03.29 E69zRD1X0.net
>>340
プレイヤーの高さ h によって挙動を変えたいので
if(h > 500){ }
のように書きたいのですがその h をどうやって取得すれば良いのでしょうか?
Acc.ahk を眺めると
Acc_Location(Acc, ChildId=0, byref Position="") { ; adapted from Sean's code
try Acc.accLocation(ComObj(0x4003,&x:=0), ComObj(0x4003,&y:=0), ComObj(0x4003,&w:=0), ComObj(0x4003,&h:=0), ChildId)
catch
return
Position := "x" NumGet(x,0,"int") " y" NumGet(y,0,"int") " w" NumGet(w,0,"int") " h" NumGet(h,0,"int")
return {x:NumGet(x,0,"int"), y:NumGet(y,0,"int"), w:NumGet(w,0,"int"), h:NumGet(h,0,"int")}
}
なんかそれらしいのが書いてあるのですがどう使えば良いか全く分からないです、、
当方 java で hello world したことあるぐらいの知識しかないです

355:名無しさん@お腹いっぱい。
18/08/23 12:33:47.88 jFzHledS0.net
使っているブラウザ次第で取得できないのを忘れていた
できるかどうかAccInfoViewer_kai.ahkで確認してください

356:名無しさん@お腹いっぱい。
18/08/23 12:44:31.29 E69zRD1X0.net
>>342
サンプルを参考にfirefoxだと
#include Acc.ahk
^b::
h := % Acc_GetLocation()["h"]
MsgBox,%h%
return
Acc_GetLocation(x="",y=""){
Acc := Acc_ObjectFromPoint(ChildId,x,y)
return Acc_Location(Acc,ChildId,Location)
}
のように書いたら動きました
ありがとうございました

357:名無しさん@お腹いっぱい。
18/08/24 05:53:49.88 8BBrzI5s0.net
1.1.30.00 - August 22, 2018
Fixed SendInput/SendPlay to restore DownR/remapped modifiers.
Increased limit of hotkeys per script from 1000 to 32762.
Changed commands which accept On/Off/Toggle to also accept 1/0/-1 (where documented).
Improvements to debugger (DBGp) support:
Added support for the -d (stack depth) option.
Added (DBGp-only) .<base> pseudo-property to resolve ambiguity.
Fixed debugger to avoid unsupported re-entry during break state.
Fixed DBGp command parser to support quoted parameters.

358:名無しさん@お腹いっぱい。
18/08/24 11:51:29.97 PobDvvRka.net
質問させて頂きたい事があります
ゲーム等のバックグラウンドでは動作が止まる、もしくは動作はする物のControlSendを受け付けなくなるウィンドウにおいて
タイトルバーで左クリック押下⇒winキー⇒左クリックを離すという操作を行うと
アプリ側にアクティブであると誤認させられるのかバックグラウンドで動作し、ControlSendで操作可能になります
この疑似アクティブ状態をAutoHotkeyで再現しようとすると上記のクリックやwinキーの操作を


359:実際に行わせるしかないでしょうか それとも直接的に上記状態にするような方法があるでしょうか なお、win7で確認しており、win10等でもできるかは不明です



360:名無しさん@お腹いっぱい。
18/08/24 12:03:59.39 PobDvvRka.net
自己解決しました
PostMessage, 0x06 , 2, , , ウィンドウ指定
といった形でWM_ACTIVATEをWA_CLICKACTIVEで送るとバックグラウンド動作できました

361:名無しさん@お腹いっぱい。
18/08/25 15:41:21.65 3RTHsCRA0.net
ド素人ですみません。
新しくインストールしたら使用できなくなりました。
今まで使用できたものが出来たくなっているみたいなのですが
どの様に直したらいいでしょうか?
貰いものなので中身は、分かっておりません。
宜しくお願い致します。
vkF2sc070::Send {-} ; [ひらカタ]縮小
AppsKey::Send {+} ; [menu]拡大
#############################
^AppsKey::
WinGet, active_id, ID, A
ChangeTF(active_id,33025) ;Period +
return
^vkF2sc070::
WinGet, active_id, ID, A
ChangeTF(active_id,33026) ;Period -
return

362:名無しさん@お腹いっぱい。
18/08/25 16:15:36.23 vYU0ROV20.net
>>347
vkF2sc070をsc070に書き換え

363:名無しさん@お腹いっぱい。
18/08/25 16:35:58.51 3RTHsCRA0.net
>>348
ありがとうございます。起動しました(^▽^)/

364:名無しさん@お腹いっぱい。
18/08/25 20:16:30.95 Z3REYl2m0.net
質問です。
やりたいこと
aの長押し(0.5秒以上)でctrl+c
作ってみたものの、コピーできたりできなかったり、
ctrl+aが出力されたり、
0.5秒以上推し続けているのにaが出力されたりします。
どうかご教授ください。
$a::
KeyWait, a, T0.5
if ErrorLevel
send,^c
else
send,a
keywait,a
return

365:名無しさん@お腹いっぱい。
18/08/25 21:22:09.82 vYU0ROV20.net
>>350
そのまま試したけどウチでは問題無く動くなぁ
見た感じも特に間違ってないと思うし
ただaが本来はキー押した時入力だけどkeywaitで離した時入力になるから
文章入力時に常駐させるのは厳しいw

366:名無しさん@お腹いっぱい。
18/08/25 21:53:27.97 Z3REYl2m0.net
>>351
返信ありがとうございます。
文章入力でaが出力されないことが結構あるので、
おっしゃる通り文章入力時にはダメですねー
ホームポジションから全く手を動かさずにコピペできたら
便利だと思ってやってみたんですけど、うまくいかないですね。

367:名無しさん@お腹いっぱい。
18/08/25 22:00:53.23 3wPFX9ho0.net
多分、長押しは待つのにイライラすると思うよ。

368:名無しさん@お腹いっぱい。
18/08/25 22:20:29.56 A9Th9uWK0.net
ロダにあるOSMを使うのがいいんじゃない?

369:名無しさん@お腹いっぱい。
18/08/25 23:23:34.42 Z3REYl2m0.net
>>353
待ち時間を0.3秒とか0.5秒位に設定して、
慣れればなかなかの使い心地になると妄想してました。
>>354
すみません
素人なもので、ちょっとどれかよくわからなかったです<(_ _)>

370:名無しさん@お腹いっぱい。
18/08/25 23:41:11.52 Zxet+5iL0.net
>>355
文字入力するときって無意識だけど一つのキーを押してそのキーから指を離す前に次のキーを押したりしてるから
Aだけキーを離した時に入力なんてしたら絶対に慣れるの不可能だと思うよ

371:名無しさん@お腹いっぱい。
18/08/26 00:12:59.70 BT4gFih30.net
>>356
そうですね
冷静に考えればそうですね
実をいうとホームポジションでコピペをしたいというよりは
無変換+○○、変換+○○に代わる手段を探してるんです。
無変換+○○、変換+○○は使いやすところは
大体割り当ててしまったので。
長押しとか二連打とかやってみたけど、
あまりうまくいかないです。

372:名無しさん@お腹いっぱい。
18/08/26 06:01:45.27 fZksv/ak0.net
質問です。
MS-IMEとGoogle IMEを切り替える[Ctrl]+[Shift]と、


373: 多言語設定を切り替える[Alt]+[Shift]を無効化して [Win]+[Space]に一本化したいのですが、 ^+::Return !+::Return ではうまくいきません。どのようにしたらいいのでしょうか?



374:名無しさん@お腹いっぱい。
18/08/26 06:48:07.65 Th03tA680.net
+^!は修飾キーとして使う場合のみ
修飾キーのみに設定する場合は shift ctrl alt にしないといけない
左右個別に設定する場合は頭にL or Rをつける、shift なら lshift または rshift
^shift::
!shift::
+ctrl::
+alt::msgbox, test
というかWindowsの言語設定でキー割り当てを「なし」にしたらだめなん?
そのほうが確実だよ

375:名無しさん@お腹いっぱい。
18/08/27 00:11:17.60 j51vjZYo0.net
>>359
ありがとうございます。
設定の方ですが、Google IMEはプロパティの「その他」で
[Ctrl] + [Shift]の無効化をみつけましたが、
MS-IMEの[Alt] + [Shift]を無効化する設定の場所がわかりません。
どこでしょう?
Windows7の頃は自分でショートカットキーを多少選べましたが、
Windows8以降はそういうのが無くなってしまい、
あきらめていました。
今はWindows10です。

376:名無しさん@お腹いっぱい。
18/08/27 05:09:22.24 qoV6L4Op0.net
スタート → 歯車アイコン(設定) → 時刻と言語 → 地域と言語
 → キーボードの詳細設定 → 言語バーのオプション
で「テキストサービスと入力言語」のウィンドウが開くので
「キーの詳細設定」タブを選択

377:名無しさん@お腹いっぱい。
18/08/27 06:00:44.94 j51vjZYo0.net
>>361
うわ~。こんなところにあったのか。ありがとうございます!!

378:名無しさん@お腹いっぱい。
18/08/29 12:27:49.35 XA7hyTCr0NIKU.net
みなさんAHKは管理者権限で起動している?
標準ユーザーで使ったら、管理者権限ウィンドウがアクティブになってるとホットキーが動かなかった

379:名無しさん@お腹いっぱい。
18/08/29 13:58:59.59 DhwLeReA0NIKU.net
常駐スクリプトは管理者権限で起動してる

380:名無しさん@お腹いっぱい。
18/08/29 14:46:26.91 HiQLd3YZ0NIKU.net
win8までは管理者だったけどwin10は標準で使ってる
win10は標準←→管理者間でのD&Dが効かなくなったり
管理者完全上位じゃなくなってるのでかえってめんどい

381:名無しさん@お腹いっぱい。
18/08/29 18:17:12.05 XA7hyTCr0NIKU.net
>>364-365
参考になりました
そう、標準←→管理者間でやりとりができなくなって混乱しました
管理者アプリでも動かしたければ素直にAHKも管理者権限で使うしかないんですね

382:名無しさん@お腹いっぱい。
18/09/02 12:28:08.49 65ZZk5O+0.net
キー::
click
return
ブラウザ、5chビュアはクリックができるのですがFXや株のインストールをして使うツールは
クリックができるものとできないものがありました。
これは何が原因だと考えられるのでしょうか?

383:名無しさん@お腹いっぱい。
18/09/02 14:03:06.99 nZZGk0pR0.net
>>367
管理者権限

384:名無しさん@お腹いっぱい。
18/09/02 20:22:05.84 65ZZk5O+0.net
>>368
管理者は自分になってるんですよね。
検索をしてみても答えが見つからないので困っています。

385:名無しさん@お腹いっぱい。
18/09/02 20:27:04.05 9vYX/DMY0.net
自分になってるっていうのはログインしているアカウントのことだろうけど
管理者権限はAutoHotKeyのスクリプトの話
普通の起動ではなくちゃんと管理者権限で動かしていますかってこと

386:名無しさん@お腹いっぱい。
18/09/02 21:40:12.12 wIEhSDDaM.net
株やFXは知らんけどゲームなんかだとマクロ系ツール対策してるソフトもあるで

387:名無しさん@お腹いっぱい。
18/09/03 00:18:46.94 aJN4MKIL0.net
>>367
キーやクリックを押す時間が短すぎると反応しない場合がある
SetKeyDelayのPressDurationを長めに設定して、Send, {Click}ならできるかも

388:名無しさん@お腹いっぱい。
18/09/04 04:16:10.63 g5h2GCQp0.net
SetKeyDelayのPressDurationってSend, {Click}ならマウスにも効くんだ?

389:名無しさん@お腹いっぱい。
18/09/05 19:34:21.37 TPq6AWrzH.net
controlsend で非アクティブウィンドウにキー送信し�


390:スいのですが、そのアプリの仕様上アクティブ化しないとキーを受け付けないみたいなので一瞬だけアクティブ化してキー送信を試みたのですが当然画面がちらついてしまいます それを回避するために、バックグラウンドでこれを実行するようなことできませんか?何かほかの手立て等もありましたらアドバイスください よろしくお願いします



391:名無しさん@お腹いっぱい。
18/09/06 21:42:11.58 bqZN8RaO0.net
Win10からかな? Ctrl+Alt+Tabでタスク切り替え画面が表示されるようになり
Excelのインデント機能が使えなくなった。
このキーアサインをWindowsじゃなくてExcelだけに渡す方法ってありますかね?
(もしくは前者を無効にする方法でもいいけど)
詳しい方よろしくお願いします。

392:名無しさん@お腹いっぱい。
18/09/06 21:52:26.32 ehmDNxzA0.net
>>375
EXCELの使い方の問題でAHK関係無いので完全にスレチ

393:名無しさん@お腹いっぱい。
18/09/06 22:17:54.18 bqZN8RaO0.net
>>376
AHKでもどうにもできないんだ。ふ~ん。
回答ありがとう。

394:名無しさん@お腹いっぱい。
18/09/06 22:40:25.04 dWFCDbiN0.net
あきらめてアクセラレータキー使え
URLリンク(tips.oreism.com)

395:名無しさん@お腹いっぱい。
18/09/06 22:44:24.39 bqZN8RaO0.net
試しにExcel起動時のみ、明示的に同じキーを送信するように書いてみたら
OSに取られる確率が減りました。
やってみるもんだね。
#IfWinActive ahk_class XLMAIN
 !^Tab::
  Send !^{Tab}
  return
 +!^Tab::
  Send +!^{Tab}
  return
#IfWinActive
慌てて操作すると取られることがある。もっといい方法ないかな?

396:名無しさん@お腹いっぱい。
18/09/06 22:48:53.53 bqZN8RaO0.net
>>378
それは最初にやってみた。元々Altコマンド派なので。
でもこの操作には合わないんだよね。落としたり上げたり連続で操作するので。
AHKで明示的に指定したらExcelに優先的に送られるようになりました。
でもWin7と同じ感覚でやると、時々取りこぼしてしまうみたい。

397:名無しさん@お腹いっぱい。
18/09/07 00:48:59.43 gH8vzFoz0.net
>>368
>>370
管理者権限が原因でした
ありがとうございます

398:名無しさん@お腹いっぱい。
18/09/07 00:51:57.73 9MzFgxMt0.net
>>375
URLリンク(www.sevenforums.com)
Win7の説明(英語)だけどWin10も同じ(Win10 Pro 64bit環境で確認済み)。
ファイル名を指定して実行(Win+R)に「Regedit」を貼り付けてEnter
レジストリエディタで下記キーを開く
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
右側(名前、種類、データ側)を右クリックして
新規 → DWORD(32ビット)値
名前を「AltTabSettings」にしてEnter
作成したAltTabSettingsをダブルクリックしてデータを1にする
Windowsを再起動
これでCtrl+Alt+Tabでタスク切換えが表示されなくなる。
但し、Alt+TabやShift+Alt+Tabでのタスク切換えが簡易表示(アイコン表示のみ)になる

399:名無しさん@お腹いっぱい。
18/09/07 03:20:53.84 ER2VoJ180.net
AutoHotkey_L v1.1.30.00でAccelerated Scrolling Script
URLリンク(autohotkey.com)
を参考にしてホイールの加速を作ってるんだけど
A_TimeSincePriorHotkeyが15~16msぐらいの精度しか出ないので
WheelDown/WheelUpの間隔が16ms、31ms、それ以上、の3段階くらいしか
実質ホイールの回転速度が区別できなくて
急加速したり思ったほど加速しなかったりでうまくいかない
もっとホイールの回転速度を精度高く区別する方法ない?

400:名無しさん@お腹いっぱい。
18/09/07 03:49:05.04 2guTp2kD0.net
>>382
情報ありがとうございます。
自分も阿久津さんのサイトでその情報に辿り着きました。
URLリンク(news.mynavi.jp)
ご指摘のエントリ追加でShell再起動したら懐かしのスイッチャーが、、
これでCtrl系のショートカットが落ちるんですね。
おかげで前OSと同様にサクサク動作するようになりました。
AHKの情報漁ってキーアサインの送信先アプリを限定するような
コードがないか捜しましたが、、ないみたいですね。
自分が試したスクリプトに Set, Enable,,(Win...) とか追加して
みましたが、高速操作で取りこぼすようでした。
一先ず問題回避できて良かったです。お騒がせしました。

401:名無しさん@お腹いっぱい。
18/09/08 15:09:39.61 HTbX78bG0.net
下記の目的を実現させようと書いたスクリプトが意図したとおりに動作しません。
無変換&BSの結果としてのBSに対して、1)が反応してしまっていると推測しますが、お助けください。
【目的】
  1) バックスペースを押す     → デリートとして認識させる
  2) 無変換&バックスペースを押す → バックスペースとして認識させる
【スクリプト】
  1) BS::Send,{Delete}
  2) vkEB & BS::Send,{BS} ;vkEBは私のPCでの無変換キーに対応するコード
【動作】
  1) バックスペースを押す     → デリート ;これはOK
  2) 無変換&バックスペースを押す → デリート ;ここをバックスペースとして認識させたい

402:名無しさん@お腹いっぱい。
18/09/08 15:24:46.05 yEblPpJT0.net
>>385
>vkEBは私のPCでの無変換キーに対応するコード
この部分に原因があるんだろうな
普通の日本語キーボード環境なら
BS::Send,{Delete}
vk1D & BS::Send,{BS}
で無変換&BS押せばちゃんとバックスペースとして動作する

403:名無しさん@お腹いっぱい。
18/09/10 22:58:19.55 aSONhD2l0.net
教えてください。
アクティブではないウインドウの中から、あるタイトルウインドウを探し、
そのようなウインドウがあったらそのウインドウをアクティブにしたい
と考えています。
どのように実現したら良いでしょうか?
よろしくお願いします。

404:名無しさん@お腹いっぱい。
18/09/10 23:04:41.89 D7YSHUJz0.net
>>387
WinActivate
使い方は自分でwiki見て勉強して

405:名無しさん@お腹いっぱい。
18/09/11 01:16:50.41 opTLw1oT0.net
>>388
wikiは見ているんだけど、アクティブでないウインドウの中からウインドウを探す方法が分からないのです。

406:名無しさん@お腹いっぱい。
18/09/11 01:28:10.85 yuiWPBQK0.net
>>389
IfWinExist
IfWinNotActive
ウィンドウを探すというよりタイトルを指定すりゃいいだけ
それで分からないならahk使うには厳しいから諦めた方が良い

407:名無しさん@お腹いっぱい。
18/09/11 06:43:59.14 opTLw1oT0.net
>>390
ahkは難しいね。できるということなので色々試してみたいと思います。

408:名無しさん@お腹いっぱい。
18/09/11 10:25:20.78 dJjlfJEo0.net
エディタに、SciTE4AutoHotkeyを使っています
gosub のあとのラベル名とかにカーソルを当ててF12を押すと、ラベルの場所へ飛ぶはずなのですが
飛ぶ場所がちょっとずれるという不具合があるようですが、これはどうにかなりませんか

409:名無しさん@お腹いっぱい。
18/09/11 16:59:18.96 yuiWPBQK0.net
>>389
そもそもアクティブにしたいウィンドウのタイトルが決まってるならそれを指定すりゃいいだけ
なのでウインドウを探す必要なんて無いんだけど?

410:名無しさん@お腹いっぱい。
18/09/11 17:09:13.47 QORl+FtnM.net
>>393
現在アクティブなウインドウのタイトルもアクティブにしたいウインドウと一緒なため、現在アクティブなウインドウを除外して検索したいのです。

411:名無しさん@お腹いっぱい。
18/09/11 17:14:42.91 WMEQYVqo0.net
>>394
そういうの後出しじゃ答える側には何も伝わらないから質問する時に先に書こうな
タイトルが同じならPIDなどで指定すりゃいい

412:名無しさん@お腹いっぱい。
18/09/11 19:19:39.78 QORl+FtnM.net
>>395
Win


413:GetとLoopを使って出来ました。



414:名無しさん@お腹いっぱい。
18/09/17 10:32:49.30 pVCkClPH0.net
こないだのWinUpdate以降、偶にMouseGestureLがずっとジェスチャー監視状態になって
タスクマネージャーで切らない限りマウスが他の操作を受け付けなくなる症状が出る
同じ症状の人or対策ってあるのかな

415:名無しさん@お腹いっぱい。
18/09/18 06:16:13.17 AXc2/XZs0.net
すみません質問なんですが
コンビネーションキーを使わず一時的にキーを入れ替えるということは可能でしょうか?
#IfWinActiveでというわけではなくひとつのソフト内で一時的に入れ替えを繰り返したいです
具体的にはコンビネーションキーを使わずアローキーとASDWを入れ替えたいです
ASDWはそれぞれ単推しが条件です
どのようなロジックにすればいいのかヒントをください

416:名無しさん@お腹いっぱい。
18/09/18 06:56:10.45 OjuHwNNl0.net
フラグで管理すればいい
f1::flag := !flag ; F1でフラグ変更
#if !flag
a::msgbox, 0
s::msgbox, 1
#if flag
a::msgbox, 10
s::msgbox, 11

417:名無しさん@お腹いっぱい。
18/09/18 07:07:04.43 AXc2/XZs0.net
>>399
ありがとうございます出来ました

418:名無しさん@お腹いっぱい。
18/09/19 10:16:39.44 3FfattUq0.net
ちょっとお伺いしたいんですけど、XYplorerなんかのアプリケーションで
WinSet, Style, -%WS_CAPTION%, ahk_id %hWnd%
でタイトルバー隠しつつウィンドウ最大化すると、
Altキー送るかごく一部のパーツ(アドレスバーの役割をするやつ)にマウスを乗っけるかするまで、
マウス操作に反応しなくなってしまうんですけど、何かスマートな復帰方法ってありますでしょうか?

419:名無しさん@お腹いっぱい。
18/09/19 12:28:31.23 hbmu9zXt0.net
無変換、変換キーとのコンビネーションが余りに良過ぎて絶頂快感レベルなんだが。

420:名無しさん@お腹いっぱい。
18/09/19 21:02:10.87 gnJBXJJ7M.net
>>402
わかる

421:名無しさん@お腹いっぱい。
18/09/20 01:47:33.71 z3KDZezp0.net
>>401
そのアプリでは確認してないがコレでどうかな?
擬似フルスクリーン関数 / Pseudo Full Screen Function
URLリンク(pastebin.com)

422:名無しさん@お腹いっぱい。
18/09/20 09:17:32.37 C98ZhkQO0.net
>>404
回答ありがとうございます
ですがどうやってタイトルバー隠して最大化するかという話ではなく、
ウィンドウ回りのメッセージいじくった副作用で、
マウスイベントが変になったウィンドウを正気に戻すにはどうすればという話ですので……
リンク先のコードもホットキーで最大化みたいな見た目にさせるものであって、
ウィンドウサイズを記憶するアプリケーションで嫌なことになるでしょうし、
HCBT_MINMAXイベントにフックして発火させてる自分のコードの参考にはなりませんでした

423:名無しさん@お腹いっぱい。
18/09/20 09:24:43.44 C98ZhkQO0.net
正直、他の大抵のアプリケーションでは何の問題もありませんし、
ControlSend, , {Alt}{Alt}, ahk_id %hWnd%でもだいたい治るのですが、
ほんの一部だけ変なままのコントロールがあったりしますし、
何かパッと全て解決する冴えた命令とかないのかなと思ってお伺いしたかったのです

424:名無しさん@お腹いっぱい。
18/09/20 10:12:39.47 z3KDZezp0.net
>>405
作者の意図しないスタイル変更で不具合起きても
再起動以外の万能な解決方法なんて「存在しない」と思うので
最大化すると狂うならしなければいいんじゃね?って答えです

425:名無しさん@お腹いっぱい。
18/09/20 19:54:17.92 U81pDOFs0.net
任意のアプリをつかっているときに、押したキーボードをファイルへ保存するために下記のようなものを作ろうと思っています。
a::
send, a
F


426:ileAppend a, filename return b:: send, b FileAppend b, filename return c:: send, c FileAppend c, filename return 試しに少し作ってやってみたらうまく行きました。 でもこれをa-zまで、また、1-9,0まですべてのキーに対して作ろうと思うと、ちょっとげっそりします なにかいい方法はありませんか



427:名無しさん@お腹いっぱい。
18/09/20 20:24:53.66 A/yRjkVr0.net
>>408
その方法のまま、ちょっと簡単にするなら、
~a::
~b::
~c::
k:=RegExReplace(A_ThisHotkey,"~","")
FileAppend %k%, keylog.txt
return

428:名無しさん@お腹いっぱい。
18/09/20 20:51:41.61 U81pDOFs0.net
>>409
なるほど。A_ThisHotkeyってのがミソですね
ちなみに、頭についているチルドはなんですか。ついてるのとついてないのではどういう違いがありますか

429:名無しさん@お腹いっぱい。
18/09/20 21:26:41.46 A/yRjkVr0.net
>>410
キーの動作はそのままに、ついでに実行する感じ。
だから、本来の動作をさせるために書いていたsendが不要になります。

430:名無しさん@お腹いっぱい。
18/09/20 22:07:05.65 U81pDOFs0.net
なるほど、ありがとうございました。 sendがいらないのですね

431:名無しさん@お腹いっぱい。
18/09/21 19:26:27.97 JRAgMbwQ0.net
includeで関数をまとめたahkを相対パスで読み込むスクリプトがあります
このスクリプトを普通にダブルクリックで起動した時は問題ないんですが
別のスクリプトでrunコマンドで起動するとincludeできないエラーがでます
なぜでしょうか

432:名無しさん@お腹いっぱい。
18/09/21 19:34:26.42 SEg6ZgdL0.net
カレントが includeで関数をまとめたahk のパスになってないから

433:名無しさん@お腹いっぱい。
18/09/22 01:31:57.12 107FtndLr.net
Array := ["平成","昭和","大正","明治","慶應","…"]
この配列の要素数を取得するにはどのようにすればいいのでしょうか?

434:名無しさん@お腹いっぱい。
18/09/22 02:08:16.24 F6Zy33Bn0.net
length()

435:名無しさん@お腹いっぱい。
18/09/23 10:43:20.32 FekjhB1ra.net
StringGetPosで文字の場所を特定したあと、そこへ即座にキャレットを移動するにはどうすればよいでしょうか?
行中で最初に見つかる特定の文字(ここでは「様」)を消す、というスクリプトを作ったのですが
{Right}をル-プしているせいか、offsetの値が大きめのときにガタガタと動作が遅くなってしまいます。
(等幅フォントなら、文字の横幅を計算するという力技も使えそうですが……)
^Right::
{
x := A_CaretX
y := A_CaretY
Send, +{End}
Send, ^c
MouseMove, x, y, 0
MouseClick, Left
content := Clipboard
StringGetPos, offset, content, 様
If offset = -1
{
Send, {End}{Right}
Return
}
Else
{
Loop, %offset%
{
Send, {Right}
}
Send, {Delete}
Return
}
}

436:417
18/09/23 10:48:16.10 FekjhB1ra.net
一応補足ですが>>417はStringReplaceで一括処理していい場面ではなく、
ひとつひとつ視認しながら作業したいとき用に作ったものです。

437:417
18/09/23 11:58:20.92 FekjhB1ra.net
>>417をいろいろ試してみましたが、文字サイズが小さいときはキャレットの位置がずれて変な挙動をしてしまいますね…

438:417
18/09/23 12:19:11.53 FekjhB1ra.net
度々すみません。
A_CaretX A_CaretY MouseMove の部分は、{Left}で事足りたようです。
しかし肝心の、{Right}をル-プしている部分の動作の遅さは改善できていません。
AppsKey::
{
Send, +{End}
Send, ^c
str := Clipboard
Send, {Left} ;何故かこれで選択文字列の先頭へキャレットが移動する
StringGetPos, offset, str,


439:、 If offset = -1 { Send, {End}{Right} Return } Else { Loop, %offset% { Send, {Right} } Send, {Delete} Return } }



440:417
18/09/23 12:28:15.56 FekjhB1ra.net
あ…ループせずとも、これでよかったですね。
いずれにせよ処理速度はやはり遅いままですが…
AppsKey::
{
Send, +{End}
Send, ^c
str := Clipboard
Send, {Left}
StringGetPos, offset, str, 様
If offset = -1
{
Send, {End}{Right}
Return
}
Else
{
Send, {Right %offset%}
Send, {Delete}
Return
}
}

441:名無しさん@お腹いっぱい。
18/09/23 13:48:06.18 ZOALMWKL0.net
特定のプログラムが起動 (アクティブや最前面) されたら、特定のプログラムが自動で起動出来るスクリプトは、可能でしょうか?

442:名無しさん@お腹いっぱい。
18/09/23 16:24:42.95 VYcnd+gw0.net
可能

443:名無しさん@お腹いっぱい。
18/09/23 18:03:43.65 ZOALMWKL0.net
#IfWinActive アクティブウィンドウ指定
RUN 起動したいプログラム
#IfWinActive
だけでは、出来ませんでした。
どなかた教えて頂けますでしょうか?

444:名無しさん@お腹いっぱい。
18/09/23 21:17:47.22 BliL24p00.net
Windowsのイベントを拾う - hoge
URLリンク(sites.google.com)

445:名無しさん@お腹いっぱい。
18/09/23 21:36:47.03 31DDKA4n0.net
>>417
; --- TEST ---
; カリン様の仙豆様様です
; カリン様の仙豆様様です
; ------------
SendMode Input
F1::SearchAndDestroy("様")
Esc::ExitApp
SearchAndDestroy(SearchText) {
BlockInput On
ClipSave := ClipboardAll
Clipboard =
Send {Home}+{End}^c
ClipWait 1
ClipStr := Clipboard
if (RegExMatch(ClipStr, "(.*?)" SearchText "(.*)", Str)) {
Clipboard := Str2
Send ^v{Home}
Sleep 100
Clipboard := Str1
Send ^v
Sleep 100
} else
Send {Down}{Home}
Clipboard := ClipSave
BlockInput Off
}

446:名無しさん@お腹いっぱい。
18/09/24 05:20:00.81 BRuHDRmp0.net
>>424
#if~(頭に#付き)はホットキー用
settimerを使って1~2秒毎に ifwinactive で監視すればいい
#Persistent
settimer, hoge, 1000
return
hoge:
ifwinactive ウィンドウタイトル
{
run 実行するプログラム
settimer, hoge, off
settimer, hage, 1000
}
return
hage:
ifwinnotactive ウィンドウタイトル
{
settimer, hage, off
settimer, hoge, on
}
return

447:名無しさん@お腹いっぱい。
18/09/24 11:54:00.95 ZlvdI27na.net
>>426
おぉっ、ありがとうございます!
実際には消さずに1つ飛ばして次へ行きたい場合もあるので、そういう機能も追加してみようと思います

448:名無しさん@お腹いっぱい。
18/09/24 15:34:23.11 9OJkCbcr0.net
>>427
ありがとうございました。

449:名無しさん@お腹いっぱい。
18/09/25 08:04:19.41 3R3+W8UO0.net
1.1.24から1.1.30へアプデしたら
ALTキーの空押しトリガーでアクセラレーターキー発動しまくりメニューが反応してしまう
大抵大丈夫なソフトが多かったがそれらのバージョンによっても反応しちゃったりしなかったり
酷いのはメニューがいきなりプルダウンする乱暴な奴とかいたり
トリガー変えたりなんだりいろいろやって納得行かず調べた結果どうやら1.1.27以降で仕様が変わったみたい
で対策(反応するっちゃするけど速攻で無効化)
#MenuMaskKey vk07
*~○○○::(LAlt、RAltを抜いた全部のキー)いっぱいなので割愛
*~LAlt::Send {Blind}{vk07}
*~RAlt::Send {Blind}{vk07}
プログラムによっちゃ無効化出来る設定あるけどOSレベルで無効にできんのかなぁ

450:名無しさん@お腹いっぱい。
18/09/26 14:20:01.12 7m8X8t6VM.net
Hayateがまともに動作しなくなったんでイラっとして1.1.26.01まで戻した

451:名無しさん@お腹いっぱい。
18/10/01 14:29:01.32 iwdKiYmDM.net
英語キーボードを使っていて、リモート接続のクライアントのIMEを右altで切り替えようとしているのですがうまくいきません
Send, SendInputいずれの場合も右alt1回目は普通にaltを押したようにメニューバーがアクティブになり
2回目かescapeでメニューバーをキャンセルするとimeが切り替わるようになります
ログ�


452:ゥると、どうやらRAltを押した瞬間に Send, {Blind}{vkF3 Up} とあり、 離したときに Send, {Blind}{vkF3 DownTemp} Send, {Blind}{vkF3 Up} とup, down, upの順に実行されていることが原因ではないかと思ったのですが down, upと動作させるにはどうしたらいいでしょうか? バージョンは1.1.24と1.1.30で試しましたが、u,d,uで実行されているのは変わりません



453:名無しさん@お腹いっぱい。
18/10/01 20:49:46.86 4Q2Wzr5t0.net
>>432
vkF3(半角/全角)で行う必要性が全く意味がわからないんだが
getIMEMode := IME_Get()
if (%getIMEMode% = 0)
{
IME_SET(1)
IME_SetConvMode(25)
}
else
{
IME_SET(0)
}
return

454:名無しさん@お腹いっぱい。
18/10/01 21:14:55.69 4Q2Wzr5t0.net
ちなみ俺のを貼っておく
URLリンク(dotup.org)

455:名無しさん@お腹いっぱい。
18/10/02 03:32:02.56 XIOIGa0E0.net
pngで貼るとか頭おかしいんちゃうか

456:名無しさん@お腹いっぱい。
18/10/02 03:54:49.60 yi1VJCDs0.net
参考程度に見れば十分やろ
関数は配布されてる単純なロジックやし使い方だって検索したらいくらでも説明あるでしょ
あとはリファレンス読めばわかるレベル
433で答えまで書いてやってんだから理解出来ないなら諦めたらえぇ

457:名無しさん@お腹いっぱい。
18/10/02 09:57:59.75 AEJZr7gaM.net
>>433
上部メニューのアクティブを抑制する行の追加リモート接続でも動きました
ありがとうございます
ちなみにIME_SETでは動かず、Send vkF3なら動作しました
キーボードの違いだと思いますが、何にせよ解決したので良かったです

458:名無しさん@お腹いっぱい。
18/10/02 10:12:56.41 z227XsnEa.net
Twitterで長文メモのスクショ貼る人みたい

459:名無しさん@お腹いっぱい。
18/10/05 13:08:49.72 SCAEAGvB0.net
たとえばFirefoxなのですが、縦スクロールバーがでている状態で、上下矢印キーを押すと上下にスクロール
するのですが、スクロールの幅が大きいのです。
スクロールバーの上下についている四角の箱をクリックしてもちょっと大きく動きます
これをAHK使って、あるいは他の方法でもいいのですが、1ピクセルづつスクロールさせたいのですが
出来ますか。

460:名無しさん@お腹いっぱい。
18/10/05 14:06:54.87 CEpw7DNT0.net
Firefoxのことは
Firefoxを調べた方が早いんじゃないの?

461:名無しさん@お腹いっぱい。
18/10/05 14:56:25.59 SCAEAGvB0.net
AHKならスクロールバーの制御も一般的に出来るのかなと思ったのですが

462:名無しさん@お腹いっぱい。
18/10/05 14:58:02.50 SCAEAGvB0.net
AHKでスクロールバーの制御をしようと思ったら、バーのマウスを持ってきてDown状態にして
カーソルを動かす、みたいなことしか方法はないのかな

463:名無しさん@お腹いっぱい。
18/10/05 15:32:42.44 Ff+7G5Zn0.net
1ピクセルずつとか文字列1行分スクロールするのに何回押さなきゃならないんだ
ってくらい使いにくくなるんだが

464:名無しさん@お腹いっぱい。
18/10/05 16:42:10.30 fes53dD+0.net
sexeやタスクスケジューラを使ってログオン前にLiveCapture3などのソフトを常駐させると、タスクトレイにアイコンが表示されないままになりますが、
AutoHotKeyを使って無理やりタスクトレイにアイコンを追加したり、該当ソフトのタスクトレイアイコン右クリック時に出るメニューと同じものを表示することは可能でしょうか?
SendMessage, 0x0205, , , , ahk_exe lc3.exe だと見つからず反応しませんでした
あと何故かtvrock.exeの場合トレイにアイコンがあっても反応しませんでした…

465:名無しさん@お腹いっぱい。
18/10/05 17:28:36.73 0eixHvUx0.net
sendmessageでスクロールメッセージ投げてやりゃスクロールはできるし
ホイールメッセージならマウスのプロパティで設定しとけば一行ずつにはなる
が、1ピクセルずつは無理じゃね
"スクロールバーを掴んで引っ張る"をエミュレーションできればあるいは

466:名無しさん@お腹いっぱい。
18/10/10 18:46:51.09 bXLwrapy01010.net
すみません、二つの変数を比較して同一の数値の場合に処理を実行したいのですが、これだと間違っていますか?
If HensuuA = %HensuuB%
{
処理
}

467:名無しさん@お腹いっぱい。
18/10/10 23:38:10.06 +qwU9+TE0.net
■変数と値の比較
if var = value
if (var = "文字列")
if (var = 数値)
■変数通しの比較
if var = %var%
if (var = var)
■代入演算子
var := var
var := "文字列"
var := 数値

468:名無しさん@お腹いっぱい。
18/10/11 03:55:06.71 AK0vvxQ+0.net
テストしてみればいいやん
HensuuA=1
HensuuB=1
If HensuuA = %HensuuB%
msgbox,1
else
msgbox,2
If (HensuuA=HensuuB)
msgbox,3
else
msgbox,4

469:名無しさん@お腹いっぱい。
18/10/11 08:32:11.30 nmZ2gWSh0.net
括弧なしifは旧仕様
分かりにくいし紛らわしいからなるべく使わない方向で

470:名無しさん@お腹いっぱい。
18/10/11 12:30:24.80 +ZOAvUFq0.net
>>447, >>448, >>449
出来ました、有難うございます。

471:名無しさん@お腹いっぱい。
18/10/13 20:22:56.92 R8f6qIw8a.net
質問です。
現在フォーカスしているテキストエリアが空っぽかどうかを確かめたいのですが、
^a^cなどクリップボードを経由する以外に簡単な方法ってありますか?

472:名無しさん@お腹いっぱい。
18/10/13 23:12:56.95 PPQQn2Ql0.net
ControlをGetしてTextを取得すれば良いと思うのだ、そうなのだ

473:名無しさん@お腹いっぱい。
18/10/17 17:16:37.12 D79vkLFj0.net
Windowsのレジストリで、環境によって変化するサブキーがありますが、これを取得する方法ってないでしょうか。
具体的には
\HKEY_CURRENT_USER\Control Panel\Desktop\PerMonitorSettings\の下のモニター識別子なんですが…

474:名無しさん@お腹いっぱい。
18/10/17 17:40:59.26 hablK01d0.net
>>453
URLリンク(ahkwiki.net)

475:名無しさん@お腹いっぱい。
18/10/17 18:17:16.63 D79vkLFj0.net
>>454
おお、ホントだ、ありがとうございます。
何かややこしく考え過ぎてました

476:名無しさん@お腹いっぱい。
18/10/19 10:15:05.21 pLy6hzb20.net
v1.1.30.00
Hotkey, If [, Expression]
Hotkey, If, (1)
エラーが出るけど、もしかして使えない?

477:名無しさん@お腹いっぱい。
18/10/19 11:09:45.16 gpPJ+axP0.net
エラー嫁

478:名無しさん@お腹いっぱい。
18/10/19 12:10:05.55 pefhSxfW0.net
アプデで動かなくなったならchangelogを確認
うちは 1.1.24.01の仕様変更で動かなくなった

479:名無しさん@お腹いっぱい。
18/10/19 14:15:23.77 EstbMLBD0.net
Win7
AutoHotkey_v1.1.30.00
MPC-HC v1.7.13
MPC再生リストのウィンドウサイズ変更をしたい 

Playr本体は、WinMoveでウィンドウサイズ変更可能 
WinMove , ahk_class MediaPlayerClassicW , 編集リスト , 150 , 322 , 680 , 400 , , ; ; X Y wid hei 除外tt
再生リストには、位置移動は効くが、ウィンドウサイズ変更が効かない
WinMove , 再生リスト , 再生リスト , 20 , 0 , 1300 , 315 , , , ; ; X Y wid hei 除外tt

WinSet , Region ,
ウィンドウを切り取った様に非表示にするが、ウィンドウ端を摘みサイズ変更で、消えてた領域も再表示 微妙
ControlMove , SysListView321 , 20 , 50 , 1009 , 615 , 再生リスト , 再生リスト , ,
ウィンドウサイズ変わらず、内部だけ変わる skrバーも消える 微妙

スマートにWサイズを変更出来ないから、もうMouseMoveして実際に掴んでWサイズを変えるか、別のソフトに頼るしかない 
MouseMoveせず、何とかAHKだけで出来ないだろうか? 
知恵をお借りしたい 

480:名無しさん@お腹いっぱい。
18/10/19 19:35:17.44 IXe0O+ly0.net
obj := {key: "a"}
Send, {%obj.key% Down} ;<- error
今は key := obj.key として %key% で2行目を通してるけど、



481:一時変数を使わず obj.key を使用する方法はありますか?



482:名無しさん@お腹いっぱい。
18/10/19 21:05:34.76 9raoExfA0.net
>>460
コマンドの各引数の先頭に「% 」で式になる
hoge, % 式, 文字列, % 式
F1::
obj := {key1: "a", key2: "b"}
obj.key3 := "c"
obj["key4"] := "d"
k = key
Send, % "{" obj.key1 "}{" obj["key2"] "}{" obj[k 3] "}{" obj[k "4"] "}"
return

483:名無しさん@お腹いっぱい。
18/10/20 01:01:00.88 9JrZydin0.net
>>461
ありがとう
おかげで理解が深まりました

484:名無しさん@お腹いっぱい。
18/10/20 03:18:16.02 HeWkqqCAa.net
今までに打ったpの回数を数えるスクリプトなのですが、動きません。
何がいけないのでしょうか?
kaisuu :=
$p::
kaisuu := %kaisuu% . "p"
Send, p
Return
k::
Loop, Parse, %kaisuu%
{
Send, %A_LoopField%
}
Return

485:名無しさん@お腹いっぱい。
18/10/20 08:48:26.84 e98hZzR20.net
これと kaisuu := %kaisuu% . "p"
これ Loop, Parse, %kaisuu%
上手くいかないときはlistlinesやlistvars見ればどこで躓いてるのかすぐわかる

486:名無しさん@お腹いっぱい。
18/10/20 19:12:56.61 HeWkqqCAa.net
>>464
単純に%を抜いたら動きました
ありがとうございます

487:名無しさん@お腹いっぱい。
18/10/20 19:54:03.54 f5Sc3ODKM.net
細かいことだが := で変数初期化するなら 値は "" にしたほうがいいよ
= だと右辺を空にするしか方法ないけど

488:名無しさん@お腹いっぱい。
18/10/20 20:02:07.60 ras6l8WJ0.net
それはなんで?

489:名無しさん@お腹いっぱい。
18/10/25 19:42:23.21 MT0G2iQx0.net
入力文字種をローマ字入力のひらがなに固定するスクリプトがいまのいままで間違ってた...orz
■正
if IME_GET()
{
 IMEMode := IME_GetConvMode()
 if (IMEMode <> 25)
 {
  if IMEMode in 0, 3, 8, 9, 11
   Send !{vkF2}
  IME_SetConvMode(25)
 }
}
■誤
if IME_GET()
{
 if (IME_GetConvMode() <> 25)
  IME_SetConvMode(25)
}
;かな入力時×

490:名無しさん@お腹いっぱい。
18/10/26 07:18:29.14 7VIDX2sma.net
キャレットを行末に移動したいのですが、{End}だとあくまで折り返し地点に行くだけで
改行コード(\rや\n)のあるところまで移動してくれません。
何かよい方法はありますか?

491:469
18/10/26 09:39:17.53 7VIDX2sma.net
{End}+{Left}^c{Right}からのRegExMatch()で改行があるかないかを調べ、
なかったら次の行を調べ…とすればいいのかなとも思いますが
最後尾にたどり着いても改行コードが見つからない場合は延々とループしそうなので
それを回避する手段が必要…?
{End}だけでなくこれの{Home}版も作りたいですが、考え方は同じ…?

492:名無しさん@お腹いっぱい。
18/10/26 18:44:43.09 HTEiSBrp0.net
もし、特定のソフト(テキストエディタ)で行末に移動させたいのであれば
行末に移動するショートカットキーが存在する場合があるのでヘルプを参照してみては

493:名無しさん@お腹いっぱい。
18/10/26 21:42:45.36 QyeYEwKz0.net
>>469-470
テキストエディタでの話と明言してなかったのでレスしなかったが>>471と同じこと思ってた(後出しだけど)
もしショートカットキーが無い場合でも検索機能で正規表現使えるなら「\n」を検索できるので、
それを備え付けのマクロ機能でマクロ化してショートカットキーに登録すれば一発で移動できると思うんだが…
有名何処のエディタならマクロ機能ぐらい装備してると思うけど「メモ帳」じゃ無理かも

494:469-470
18/10/27 11:24:09.50 7lsaB75Ra.net
>>471-472
あ、明言していませんでしたが主にGoogle Chromeですね…
調べてみたらChromeにはそのようはショートカットはありませんでした
(一応C


495:lrl + Endとかは動くものの、何を基準にした仕様なのかは分からず…) テキストエディタと違って[EOF]を検出できるかも怪しいので、 >>470 に書いたようにループを気にしていた次第です まず+^{End}^cで今いる地点から文末の間に改行コードがあるかどうかをRegExMatchで探し(なければ終了) もしあれば【最初に返ってきた位置地点までキャレットを瞬時に移動する】…方法があればいいですけど そういうのってないですよね…? (マウスクリックだとなんか安定しないし…) 仕方ないので一旦{Left}で選択を解除し、 +{End}^cで再度1行ずつ改行コードを探しつつ、 その行に改行コードがなければ次の行へ…とするのが最善…? ということで自己解決した…ような気がします



496:名無しさん@お腹いっぱい。
18/10/29 18:11:16.16 pGyDCuIr0NIKU.net
すいません教えて下さい。
USBテンキーの割当てについて、
今までi buffaloのテンキーを使用してnumlockオフ時のキーの割当てを変えていたのですが、
最近ナカバヤシのDigio2という静音のワイヤレステンキーを買ったらpgup、home等のキーがメインのキーボード側とは区別されていない仕様で、5のキーも何も割当てがない(ibuffaloのはclearが割当てられていました)仕様でした。
これはナカバヤシのが普通でibuffaloのが特殊なんでしょうか?
今まで通り割当てるつもりで買ったら何も出来ないので困っています。

497:名無しさん@お腹いっぱい。
18/10/29 19:07:38.51 G3c6EY1j0NIKU.net
下記で、AAAがアクティブなとき、aキーを押したとき、something2は実行されますか。
されないとすると、なぜでしょうか
#ifwinactive, AAA
a::
do something1
return
#ifwinactive
#ifwinnotactive, BBB
a::
do something2
return
#ifwinnotactive

498:名無しさん@お腹いっぱい。
18/10/29 19:31:45.02 DbSYxVta0NIKU.net
#if系 は排他制御だから
複数の条件で一致しても先に見つかったほうしか実行されない

499:名無しさん@お腹いっぱい。
18/10/29 19:52:49.55 XZZ80pWq0NIKU.net
>>474
んなもんハードウェア仕様次第だろ
各ハードごとの仕様の違いなんてスレチ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch