AutoHotkey スレッド part26

■ このスレッドは過去ログ倉庫に格納されています
2018/04/25(水) 18:08:09.39ID:LmrG+Efz0
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512

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

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

■日本語解説等
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 👀
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
2018/08/27(月) 06:00:44.94ID:j51vjZYo0
>>361
うわ〜。こんなところにあったのか。ありがとうございます!!
2018/08/29(水) 12:27:49.35ID:XA7hyTCr0NIKU
みなさんAHKは管理者権限で起動している?
標準ユーザーで使ったら、管理者権限ウィンドウがアクティブになってるとホットキーが動かなかった
2018/08/29(水) 13:58:59.59ID:DhwLeReA0NIKU
常駐スクリプトは管理者権限で起動してる
2018/08/29(水) 14:46:26.91ID:HiQLd3YZ0NIKU
win8までは管理者だったけどwin10は標準で使ってる
win10は標準←→管理者間でのD&Dが効かなくなったり
管理者完全上位じゃなくなってるのでかえってめんどい
2018/08/29(水) 18:17:12.05ID:XA7hyTCr0NIKU
>>364-365
参考になりました
そう、標準←→管理者間でやりとりができなくなって混乱しました

管理者アプリでも動かしたければ素直にAHKも管理者権限で使うしかないんですね
367名無しさん@お腹いっぱい。 (ワッチョイ 1d3e-1nOF)
垢版 |
2018/09/02(日) 12:28:08.49ID:65ZZk5O+0
キー::
click
return

ブラウザ、5chビュアはクリックができるのですがFXや株のインストールをして使うツールは
クリックができるものとできないものがありました。
これは何が原因だと考えられるのでしょうか?
2018/09/02(日) 14:03:06.99ID:nZZGk0pR0
>>367
管理者権限
369名無しさん@お腹いっぱい。 (ワッチョイ 1d3e-1nOF)
垢版 |
2018/09/02(日) 20:22:05.84ID:65ZZk5O+0
>>368
管理者は自分になってるんですよね。
検索をしてみても答えが見つからないので困っています。
2018/09/02(日) 20:27:04.05ID:9vYX/DMY0
自分になってるっていうのはログインしているアカウントのことだろうけど
管理者権限はAutoHotKeyのスクリプトの話
普通の起動ではなくちゃんと管理者権限で動かしていますかってこと
2018/09/02(日) 21:40:12.12ID:wIEhSDDaM
株やFXは知らんけどゲームなんかだとマクロ系ツール対策してるソフトもあるで
2018/09/03(月) 00:18:46.94ID:aJN4MKIL0
>>367
キーやクリックを押す時間が短すぎると反応しない場合がある
SetKeyDelayのPressDurationを長めに設定して、Send, {Click}ならできるかも
2018/09/04(火) 04:16:10.63ID:g5h2GCQp0
SetKeyDelayのPressDurationってSend, {Click}ならマウスにも効くんだ?
2018/09/05(水) 19:34:21.37ID:TPq6AWrzH
controlsend で非アクティブウィンドウにキー送信したいのですが、そのアプリの仕様上アクティブ化しないとキーを受け付けないみたいなので一瞬だけアクティブ化してキー送信を試みたのですが当然画面がちらついてしまいます
それを回避するために、バックグラウンドでこれを実行するようなことできませんか?何かほかの手立て等もありましたらアドバイスください よろしくお願いします
2018/09/06(木) 21:42:11.58ID:bqZN8RaO0
Win10からかな? Ctrl+Alt+Tabでタスク切り替え画面が表示されるようになり
Excelのインデント機能が使えなくなった。
このキーアサインをWindowsじゃなくてExcelだけに渡す方法ってありますかね?
(もしくは前者を無効にする方法でもいいけど)
詳しい方よろしくお願いします。
2018/09/06(木) 21:52:26.32ID:ehmDNxzA0
>>375
EXCELの使い方の問題でAHK関係無いので完全にスレチ
2018/09/06(木) 22:17:54.18ID:bqZN8RaO0
>>376
AHKでもどうにもできないんだ。ふ〜ん。
回答ありがとう。
2018/09/06(木) 22:40:25.04ID:dWFCDbiN0
あきらめてアクセラレータキー使え
https://tips.oreism.com/2018/01/10/%E3%80%8C%E3%82%A4%E3%83%B3%E3%83%87%E3%83%B3%E3%83%88%E3%80%8D%E3%81%AE%E3%82%B7%E3%83%A7%E3%83%BC%E3%83%88%E3%82%AB%E3%83%83%E3%83%88-%E3%82%A8%E3%82%AF%E3%82%BB%E3%83%AB-excel/
2018/09/06(木) 22:44:24.39ID:bqZN8RaO0
試しにExcel起動時のみ、明示的に同じキーを送信するように書いてみたら
OSに取られる確率が減りました。
やってみるもんだね。

#IfWinActive ahk_class XLMAIN
 !^Tab::
  Send !^{Tab}
  return
 +!^Tab::
  Send +!^{Tab}
  return
#IfWinActive

慌てて操作すると取られることがある。もっといい方法ないかな?
2018/09/06(木) 22:48:53.53ID:bqZN8RaO0
>>378
それは最初にやってみた。元々Altコマンド派なので。
でもこの操作には合わないんだよね。落としたり上げたり連続で操作するので。
AHKで明示的に指定したらExcelに優先的に送られるようになりました。
でもWin7と同じ感覚でやると、時々取りこぼしてしまうみたい。
381名無しさん@お腹いっぱい。 (ワッチョイ 173e-Mpq2)
垢版 |
2018/09/07(金) 00:48:59.43ID:gH8vzFoz0
>>368
>>370
管理者権限が原因でした
ありがとうございます
2018/09/07(金) 00:51:57.73ID:9MzFgxMt0
>>375
https://www.sevenforums.com/customization/56867-disabling-ctrl-alt-tab-function.html
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でのタスク切換えが簡易表示(アイコン表示のみ)になる
2018/09/07(金) 03:20:53.84ID:ER2VoJ180
AutoHotkey_L v1.1.30.00でAccelerated Scrolling Script
ttps://autohotkey.com/board/topic/48426-accelerated-scrolling-script/
を参考にしてホイールの加速を作ってるんだけど
A_TimeSincePriorHotkeyが15〜16msぐらいの精度しか出ないので
WheelDown/WheelUpの間隔が16ms、31ms、それ以上、の3段階くらいしか
実質ホイールの回転速度が区別できなくて
急加速したり思ったほど加速しなかったりでうまくいかない

もっとホイールの回転速度を精度高く区別する方法ない?
2018/09/07(金) 03:49:05.04ID:2guTp2kD0
>>382
情報ありがとうございます。
自分も阿久津さんのサイトでその情報に辿り着きました。
https://news.mynavi.jp/article/windows-358/
ご指摘のエントリ追加でShell再起動したら懐かしのスイッチャーが、、
これでCtrl系のショートカットが落ちるんですね。
おかげで前OSと同様にサクサク動作するようになりました。

AHKの情報漁ってキーアサインの送信先アプリを限定するような
コードがないか捜しましたが、、ないみたいですね。
自分が試したスクリプトに Set, Enable,,(Win...) とか追加して
みましたが、高速操作で取りこぼすようでした。

一先ず問題回避できて良かったです。お騒がせしました。
2018/09/08(土) 15:09:39.61ID:HTbX78bG0
下記の目的を実現させようと書いたスクリプトが意図したとおりに動作しません。
無変換&BSの結果としてのBSに対して、1)が反応してしまっていると推測しますが、お助けください。

【目的】
  1) バックスペースを押す     → デリートとして認識させる
  2) 無変換&バックスペースを押す → バックスペースとして認識させる
【スクリプト】
  1) BS::Send,{Delete}
  2) vkEB & BS::Send,{BS} ;vkEBは私のPCでの無変換キーに対応するコード
【動作】
  1) バックスペースを押す     → デリート ;これはOK
  2) 無変換&バックスペースを押す → デリート ;ここをバックスペースとして認識させたい
2018/09/08(土) 15:24:46.05ID:yEblPpJT0
>>385
>vkEBは私のPCでの無変換キーに対応するコード
この部分に原因があるんだろうな
普通の日本語キーボード環境なら

BS::Send,{Delete}
vk1D & BS::Send,{BS}

で無変換&BS押せばちゃんとバックスペースとして動作する
2018/09/10(月) 22:58:19.55ID:aSONhD2l0
教えてください。
アクティブではないウインドウの中から、あるタイトルウインドウを探し、
そのようなウインドウがあったらそのウインドウをアクティブにしたい
と考えています。
どのように実現したら良いでしょうか?
よろしくお願いします。
2018/09/10(月) 23:04:41.89ID:D7YSHUJz0
>>387
WinActivate
使い方は自分でwiki見て勉強して
2018/09/11(火) 01:16:50.41ID:opTLw1oT0
>>388
wikiは見ているんだけど、アクティブでないウインドウの中からウインドウを探す方法が分からないのです。
2018/09/11(火) 01:28:10.85ID:yuiWPBQK0
>>389
IfWinExist
IfWinNotActive
ウィンドウを探すというよりタイトルを指定すりゃいいだけ
それで分からないならahk使うには厳しいから諦めた方が良い
2018/09/11(火) 06:43:59.14ID:opTLw1oT0
>>390
ahkは難しいね。できるということなので色々試してみたいと思います。
2018/09/11(火) 10:25:20.78ID:dJjlfJEo0
エディタに、SciTE4AutoHotkeyを使っています

gosub のあとのラベル名とかにカーソルを当ててF12を押すと、ラベルの場所へ飛ぶはずなのですが
飛ぶ場所がちょっとずれるという不具合があるようですが、これはどうにかなりませんか
2018/09/11(火) 16:59:18.96ID:yuiWPBQK0
>>389
そもそもアクティブにしたいウィンドウのタイトルが決まってるならそれを指定すりゃいいだけ
なのでウインドウを探す必要なんて無いんだけど?
2018/09/11(火) 17:09:13.47ID:QORl+FtnM
>>393
現在アクティブなウインドウのタイトルもアクティブにしたいウインドウと一緒なため、現在アクティブなウインドウを除外して検索したいのです。
2018/09/11(火) 17:14:42.91ID:WMEQYVqo0
>>394
そういうの後出しじゃ答える側には何も伝わらないから質問する時に先に書こうな
タイトルが同じならPIDなどで指定すりゃいい
2018/09/11(火) 19:19:39.78ID:QORl+FtnM
>>395
WinGetとLoopを使って出来ました。
2018/09/17(月) 10:32:49.30ID:pVCkClPH0
こないだのWinUpdate以降、偶にMouseGestureLがずっとジェスチャー監視状態になって
タスクマネージャーで切らない限りマウスが他の操作を受け付けなくなる症状が出る
同じ症状の人or対策ってあるのかな
2018/09/18(火) 06:16:13.17ID:AXc2/XZs0
すみません質問なんですが
コンビネーションキーを使わず一時的にキーを入れ替えるということは可能でしょうか?
#IfWinActiveでというわけではなくひとつのソフト内で一時的に入れ替えを繰り返したいです

具体的にはコンビネーションキーを使わずアローキーとASDWを入れ替えたいです
ASDWはそれぞれ単推しが条件です
どのようなロジックにすればいいのかヒントをください
2018/09/18(火) 06:56:10.45ID:OjuHwNNl0
フラグで管理すればいい

f1::flag := !flag ; F1でフラグ変更

#if !flag
a::msgbox, 0
s::msgbox, 1

#if flag
a::msgbox, 10
s::msgbox, 11
2018/09/18(火) 07:07:04.43ID:AXc2/XZs0
>>399
ありがとうございます出来ました
2018/09/19(水) 10:16:39.44ID:3FfattUq0
ちょっとお伺いしたいんですけど、XYplorerなんかのアプリケーションで
WinSet, Style, -%WS_CAPTION%, ahk_id %hWnd%
でタイトルバー隠しつつウィンドウ最大化すると、
Altキー送るかごく一部のパーツ(アドレスバーの役割をするやつ)にマウスを乗っけるかするまで、
マウス操作に反応しなくなってしまうんですけど、何かスマートな復帰方法ってありますでしょうか?
2018/09/19(水) 12:28:31.23ID:hbmu9zXt0
無変換、変換キーとのコンビネーションが余りに良過ぎて絶頂快感レベルなんだが。
2018/09/19(水) 21:02:10.87ID:gnJBXJJ7M
>>402
わかる
2018/09/20(木) 01:47:33.71ID:z3KDZezp0
>>401
そのアプリでは確認してないがコレでどうかな?

擬似フルスクリーン関数 / Pseudo Full Screen Function
https://pastebin.com/PddjCJhY
2018/09/20(木) 09:17:32.37ID:C98ZhkQO0
>>404
回答ありがとうございます
ですがどうやってタイトルバー隠して最大化するかという話ではなく、
ウィンドウ回りのメッセージいじくった副作用で、
マウスイベントが変になったウィンドウを正気に戻すにはどうすればという話ですので……

リンク先のコードもホットキーで最大化みたいな見た目にさせるものであって、
ウィンドウサイズを記憶するアプリケーションで嫌なことになるでしょうし、
HCBT_MINMAXイベントにフックして発火させてる自分のコードの参考にはなりませんでした
2018/09/20(木) 09:24:43.44ID:C98ZhkQO0
正直、他の大抵のアプリケーションでは何の問題もありませんし、
ControlSend, , {Alt}{Alt}, ahk_id %hWnd%でもだいたい治るのですが、
ほんの一部だけ変なままのコントロールがあったりしますし、
何かパッと全て解決する冴えた命令とかないのかなと思ってお伺いしたかったのです
2018/09/20(木) 10:12:39.47ID:z3KDZezp0
>>405
作者の意図しないスタイル変更で不具合起きても
再起動以外の万能な解決方法なんて「存在しない」と思うので
最大化すると狂うならしなければいいんじゃね?って答えです
2018/09/20(木) 19:54:17.92ID:U81pDOFs0
任意のアプリをつかっているときに、押したキーボードをファイルへ保存するために下記のようなものを作ろうと思っています。

a::
send, a
FileAppend a, filename
return

b::
send, b
FileAppend b, filename
return

c::
send, c
FileAppend c, filename
return

試しに少し作ってやってみたらうまく行きました。
でもこれをa-zまで、また、1-9,0まですべてのキーに対して作ろうと思うと、ちょっとげっそりします
なにかいい方法はありませんか
2018/09/20(木) 20:24:53.66ID:A/yRjkVr0
>>408
その方法のまま、ちょっと簡単にするなら、
~a::
~b::
~c::
k:=RegExReplace(A_ThisHotkey,"~","")
FileAppend %k%, keylog.txt
return
2018/09/20(木) 20:51:41.61ID:U81pDOFs0
>>409
なるほど。A_ThisHotkeyってのがミソですね
ちなみに、頭についているチルドはなんですか。ついてるのとついてないのではどういう違いがありますか
2018/09/20(木) 21:26:41.46ID:A/yRjkVr0
>>410
キーの動作はそのままに、ついでに実行する感じ。
だから、本来の動作をさせるために書いていたsendが不要になります。
2018/09/20(木) 22:07:05.65ID:U81pDOFs0
なるほど、ありがとうございました。 sendがいらないのですね
2018/09/21(金) 19:26:27.97ID:JRAgMbwQ0
includeで関数をまとめたahkを相対パスで読み込むスクリプトがあります
このスクリプトを普通にダブルクリックで起動した時は問題ないんですが
別のスクリプトでrunコマンドで起動するとincludeできないエラーがでます
なぜでしょうか
2018/09/21(金) 19:34:26.42ID:SEg6ZgdL0
カレントが includeで関数をまとめたahk のパスになってないから
2018/09/22(土) 01:31:57.12ID:107FtndLr
Array := ["平成","昭和","大正","明治","慶應","…"]

この配列の要素数を取得するにはどのようにすればいいのでしょうか?
2018/09/22(土) 02:08:16.24ID:F6Zy33Bn0
length()
2018/09/23(日) 10:43:20.32ID:FekjhB1ra
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
}
}
2018/09/23(日) 10:48:16.10ID:FekjhB1ra
一応補足ですが>>417はStringReplaceで一括処理していい場面ではなく、
ひとつひとつ視認しながら作業したいとき用に作ったものです。
2018/09/23(日) 11:58:20.92ID:FekjhB1ra
>>417をいろいろ試してみましたが、文字サイズが小さいときはキャレットの位置がずれて変な挙動をしてしまいますね…
2018/09/23(日) 12:19:11.53ID:FekjhB1ra
度々すみません。
A_CaretX A_CaretY MouseMove の部分は、{Left}で事足りたようです。

しかし肝心の、{Right}をル−プしている部分の動作の遅さは改善できていません。

AppsKey::
{
Send, +{End}
Send, ^c
str := Clipboard
Send, {Left} ;何故かこれで選択文字列の先頭へキャレットが移動する
StringGetPos, offset, str, 、
If offset = -1
{
Send, {End}{Right}
Return
}
Else
{
Loop, %offset%
{
Send, {Right}
}
Send, {Delete}
Return
}
}
2018/09/23(日) 12:28:15.56ID:FekjhB1ra
あ…ループせずとも、これでよかったですね。
いずれにせよ処理速度はやはり遅いままですが…

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
}
}
2018/09/23(日) 13:48:06.18ID:ZOALMWKL0
特定のプログラムが起動 (アクティブや最前面) されたら、特定のプログラムが自動で起動出来るスクリプトは、可能でしょうか?
2018/09/23(日) 16:24:42.95ID:VYcnd+gw0
可能
2018/09/23(日) 18:03:43.65ID:ZOALMWKL0
#IfWinActive アクティブウィンドウ指定
RUN 起動したいプログラム
#IfWinActive

だけでは、出来ませんでした。

どなかた教えて頂けますでしょうか?
2018/09/23(日) 21:17:47.22ID:BliL24p00
Windowsのイベントを拾う - hoge
https://sites.google.com/site/agkh6mze/howto/winevent
2018/09/23(日) 21:36:47.03ID:31DDKA4n0
>>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
}
2018/09/24(月) 05:20:00.81ID:BRuHDRmp0
>>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
2018/09/24(月) 11:54:00.95ID:ZlvdI27na
>>426
おぉっ、ありがとうございます!
実際には消さずに1つ飛ばして次へ行きたい場合もあるので、そういう機能も追加してみようと思います
429名無しさん@お腹いっぱい。 (ワッチョイWW b184-1vXo)
垢版 |
2018/09/24(月) 15:34:23.11ID:9OJkCbcr0
>>427
ありがとうございました。
2018/09/25(火) 08:04:19.41ID:3R3+W8UO0
1.1.24から1.1.30へアプデしたら
ALTキーの空押しトリガーでアクセラレーターキー発動しまくりメニューが反応してしまう
大抵大丈夫なソフトが多かったがそれらのバージョンによっても反応しちゃったりしなかったり
酷いのはメニューがいきなりプルダウンする乱暴な奴とかいたり
トリガー変えたりなんだりいろいろやって納得行かず調べた結果どうやら1.1.27以降で仕様が変わったみたい

で対策(反応するっちゃするけど速攻で無効化)
#MenuMaskKey vk07
*~○○○::(LAlt、RAltを抜いた全部のキー)いっぱいなので割愛
*~LAlt::Send {Blind}{vk07}
*~RAlt::Send {Blind}{vk07}

プログラムによっちゃ無効化出来る設定あるけどOSレベルで無効にできんのかなぁ
2018/09/26(水) 14:20:01.12ID:7m8X8t6VM
Hayateがまともに動作しなくなったんでイラっとして1.1.26.01まで戻した
2018/10/01(月) 14:29:01.32ID:iwdKiYmDM
英語キーボードを使っていて、リモート接続のクライアントのIMEを右altで切り替えようとしているのですがうまくいきません
Send, SendInputいずれの場合も右alt1回目は普通にaltを押したようにメニューバーがアクティブになり
2回目かescapeでメニューバーをキャンセルするとimeが切り替わるようになります
ログを見ると、どうやら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で実行されているのは変わりません
2018/10/01(月) 20:49:46.86ID:4Q2Wzr5t0
>>432
vkF3(半角/全角)で行う必要性が全く意味がわからないんだが

getIMEMode := IME_Get()
if (%getIMEMode% = 0)
{
IME_SET(1)
IME_SetConvMode(25)
}
else
{
IME_SET(0)
}
return
2018/10/01(月) 21:14:55.69ID:4Q2Wzr5t0
ちなみ俺のを貼っておく
https://dotup.org/uploda/dotup.org1656656.png
2018/10/02(火) 03:32:02.56ID:XIOIGa0E0
pngで貼るとか頭おかしいんちゃうか
2018/10/02(火) 03:54:49.60ID:yi1VJCDs0
参考程度に見れば十分やろ
関数は配布されてる単純なロジックやし使い方だって検索したらいくらでも説明あるでしょ
あとはリファレンス読めばわかるレベル
433で答えまで書いてやってんだから理解出来ないなら諦めたらえぇ
2018/10/02(火) 09:57:59.75ID:AEJZr7gaM
>>433
上部メニューのアクティブを抑制する行の追加リモート接続でも動きました
ありがとうございます
ちなみにIME_SETでは動かず、Send vkF3なら動作しました
キーボードの違いだと思いますが、何にせよ解決したので良かったです
2018/10/02(火) 10:12:56.41ID:z227XsnEa
Twitterで長文メモのスクショ貼る人みたい
2018/10/05(金) 13:08:49.72ID:SCAEAGvB0
たとえばFirefoxなのですが、縦スクロールバーがでている状態で、上下矢印キーを押すと上下にスクロール
するのですが、スクロールの幅が大きいのです。
スクロールバーの上下についている四角の箱をクリックしてもちょっと大きく動きます

これをAHK使って、あるいは他の方法でもいいのですが、1ピクセルづつスクロールさせたいのですが
出来ますか。
2018/10/05(金) 14:06:54.87ID:CEpw7DNT0
Firefoxのことは
Firefoxを調べた方が早いんじゃないの?
2018/10/05(金) 14:56:25.59ID:SCAEAGvB0
AHKならスクロールバーの制御も一般的に出来るのかなと思ったのですが
2018/10/05(金) 14:58:02.50ID:SCAEAGvB0
AHKでスクロールバーの制御をしようと思ったら、バーのマウスを持ってきてDown状態にして
カーソルを動かす、みたいなことしか方法はないのかな
2018/10/05(金) 15:32:42.44ID:Ff+7G5Zn0
1ピクセルずつとか文字列1行分スクロールするのに何回押さなきゃならないんだ
ってくらい使いにくくなるんだが
2018/10/05(金) 16:42:10.30ID:fes53dD+0
sexeやタスクスケジューラを使ってログオン前にLiveCapture3などのソフトを常駐させると、タスクトレイにアイコンが表示されないままになりますが、
AutoHotKeyを使って無理やりタスクトレイにアイコンを追加したり、該当ソフトのタスクトレイアイコン右クリック時に出るメニューと同じものを表示することは可能でしょうか?

SendMessage, 0x0205, , , , ahk_exe lc3.exe だと見つからず反応しませんでした
あと何故かtvrock.exeの場合トレイにアイコンがあっても反応しませんでした…
2018/10/05(金) 17:28:36.73ID:0eixHvUx0
sendmessageでスクロールメッセージ投げてやりゃスクロールはできるし
ホイールメッセージならマウスのプロパティで設定しとけば一行ずつにはなる
が、1ピクセルずつは無理じゃね
"スクロールバーを掴んで引っ張る"をエミュレーションできればあるいは
2018/10/10(水) 18:46:51.09ID:bXLwrapy01010
すみません、二つの変数を比較して同一の数値の場合に処理を実行したいのですが、これだと間違っていますか?

If HensuuA = %HensuuB%
{
処理
}
2018/10/10(水) 23:38:10.06ID:+qwU9+TE0
■変数と値の比較
if var = value
if (var = "文字列")
if (var = 数値)

■変数通しの比較
if var = %var%
if (var = var)

■代入演算子
var := var
var := "文字列"
var := 数値
2018/10/11(木) 03:55:06.71ID:AK0vvxQ+0
テストしてみればいいやん
HensuuA=1
HensuuB=1

If HensuuA = %HensuuB%
msgbox,1
else
msgbox,2

If (HensuuA=HensuuB)
msgbox,3
else
msgbox,4
2018/10/11(木) 08:32:11.30ID:nmZ2gWSh0
括弧なしifは旧仕様
分かりにくいし紛らわしいからなるべく使わない方向で
2018/10/11(木) 12:30:24.80ID:+ZOAvUFq0
>>447, >>448, >>449
出来ました、有難うございます。
2018/10/13(土) 20:22:56.92ID:R8f6qIw8a
質問です。
現在フォーカスしているテキストエリアが空っぽかどうかを確かめたいのですが、
^a^cなどクリップボードを経由する以外に簡単な方法ってありますか?
2018/10/13(土) 23:12:56.95ID:PPQQn2Ql0
ControlをGetしてTextを取得すれば良いと思うのだ、そうなのだ
2018/10/17(水) 17:16:37.12ID:D79vkLFj0
Windowsのレジストリで、環境によって変化するサブキーがありますが、これを取得する方法ってないでしょうか。
具体的には
\HKEY_CURRENT_USER\Control Panel\Desktop\PerMonitorSettings\の下のモニター識別子なんですが…
2018/10/17(水) 17:40:59.26ID:hablK01d0
>>453
http://ahkwiki.net/LoopReg
2018/10/17(水) 18:17:16.63ID:D79vkLFj0
>>454

おお、ホントだ、ありがとうございます。
何かややこしく考え過ぎてました
2018/10/19(金) 10:15:05.21ID:pLy6hzb20
v1.1.30.00
Hotkey, If [, Expression]

Hotkey, If, (1)
エラーが出るけど、もしかして使えない?
2018/10/19(金) 11:09:45.16ID:gpPJ+axP0
エラー嫁
2018/10/19(金) 12:10:05.55ID:pefhSxfW0
アプデで動かなくなったならchangelogを確認
うちは 1.1.24.01の仕様変更で動かなくなった
2018/10/19(金) 14:15:23.77ID:EstbMLBD0
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だけで出来ないだろうか? 
知恵をお借りしたい 
2018/10/19(金) 19:35:17.44ID:IXe0O+ly0
obj := {key: "a"}
Send, {%obj.key% Down} ;<- error

今は key := obj.key として %key% で2行目を通してるけど、
一時変数を使わず obj.key を使用する方法はありますか?
2018/10/19(金) 21:05:34.76ID:9raoExfA0
>>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
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

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