- 1 名前:名無しさん@お腹いっぱい。 [2008/12/31(水) 12:39:34 ID:ROX9gd900]
- ■公式
www.autohotkey.com/ ■解説 AutoHotkeyを流行らせるページ lukewarm.s101.xrea.com/ ■過去スレ 1 pc7.2ch.net/test/read.cgi/software/1098531338/ 2 pc7.2ch.net/test/read.cgi/software/1129836713/ 3 pc11.2ch.net/test/read.cgi/software/1157043396/ 4 pc11.2ch.net/test/read.cgi/software/1184556627/ 5 pc11.2ch.net/test/read.cgi/software/1201502896/ 6 pc11.2ch.net/test/read.cgi/software/1219130051/ 関連リンク>>2以降も参照
- 552 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/29(日) 15:00:23 ID:x2HXBG8DP]
- メニュー上の項目先頭のチェック"レ"が付いているかいないかを取得する方法ってありますか?
- 553 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/29(日) 15:41:55 ID:mk90UFZl0]
- WinGetレ
- 554 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/29(日) 15:52:41 ID:pOBhf47V0]
- >>552
AHKにゃ無い。 あと最近のアプリは「普通のメニュー」を使っていないのが多いよ。
- 555 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/29(日) 16:20:44 ID:wyAVApH80]
- >>549
メモ帳で中身見てもらえばわかると思うけど、基本は無変換押してホイールくるくる。 #NoTrayIconは外したほうがいいかも。Vistaでも動くかな?わからない。動くと思うけど。
- 556 名前:552 mailto:sage [2009/03/29(日) 16:22:07 ID:x2HXBG8DP]
- >>554
そうでしたか どうもありがとうございました
- 557 名前:549 mailto:sage [2009/03/30(月) 00:10:07 ID:rej68raf0]
- >>555
おお動いたよ おもしろいねこれ
- 558 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/30(月) 03:11:37 ID:rej68raf0]
- imeの状態を、キーの入力ごとにチェックするのではなくて、
0.5秒ごとにチェックするには どうすればいいのでしょうか?
- 559 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/30(月) 03:27:33 ID:lQv120RA0]
- >>558
#persistent SetTimer, IME_GET, 500 return IME_GET: Tooltip,% IME_GET() return
- 560 名前:558 mailto:sage [2009/03/30(月) 07:57:20 ID:rej68raf0]
- >>559
ありがとうございます! 非常に助かりました!
- 561 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 13:18:36 ID:LiwDBTTE0]
- マウスカーソル1回転させると何かアクションを起こすみたいなサンプルスクリプトってないですかね。
- 562 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 14:34:53 ID:V9eOhI1h0]
- >>561
>>492
- 563 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 16:22:04 ID:DLXcLh2K0]
- 前から思ってたんだけどCoordModeを画面端からの絶対座標にする方法は
ないですか? 画面の右側にGUIやtooltipを表示するスクリプトを作って使っているんだけど、 使うPCによって画面外にはみ出したりする。 今はPCごとに表示座標を書き換えてるんだけど そうしなくていい方法があったら教えてくれませんか。
- 564 名前:563 mailto:sage [2009/03/31(火) 16:24:29 ID:DLXcLh2K0]
- 自己レス。
WinGetPosでProgram Managerを指定してデスクトップのサイズを 取得すればいいのかな?と今気付いた。
- 565 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 17:59:07 ID:ppgb+fKo0]
- >>563
SysGet
- 566 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 20:30:14 ID:wxVKoyMy0]
- キーを押す長さをSetKeyDelayで設定できるようですが、
右クリックを5000ms押す場合には、どのように指定すればいいですか?
- 567 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 20:54:33 ID:V9eOhI1h0]
- SomeKey::
Send, {RButton Down} Sleep, 500 Send, {RButton Up} return ちなみにこれだと5秒経たないうちにもう一度キーを押しても反応しない
- 568 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 20:55:24 ID:V9eOhI1h0]
- あ、500msになっとる・・・
- 569 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/31(火) 22:45:50 ID:wxVKoyMy0]
- >>567 >>568
レスありがとうございます。 アドバイスのおかげでうまくいきました
- 570 名前:名無しさん@お腹いっぱい。 [2009/04/01(水) 17:17:57 ID:UifZp1zf0]
- guiのウィンドウを動かしたら
その移動後の位置を取得したいです どうすればいいのでしょうか
- 571 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/01(水) 19:38:22 ID:81tLNstp0]
- >>548
AhkWheelVol改訂パクリ増幅完成版 WheelVolアイコンを使えるようにした。他微々変更。 ttp://lukewarm.s101.xrea.com/up/file/107.zip
- 572 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/01(水) 19:52:53 ID:81tLNstp0]
- >>570
Process,ExistとかWinGetとかWinGetPosとか使う
- 573 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/01(水) 20:11:31 ID:o8Y7i7os0]
- >>570
すげ〜力業。もっとスマートにできないもんかねぇ Gui, +LastFound GuiHwnd := WinExist() Gui, Show, w200 h100 WinGetPos,xx,yy,,,ahk_id %GuiHwnd% return #IfWinActive, ahk_class AutoHotkeyGUI ~LButton Up:: ~Enter Up:: WinGetPos,x,y,w,h, ahk_id %GuiHwnd% if (xx != x || yy != y) SetTimer, OnGuiMoved,-1 xx:=x,yy:=y return OnGuiMoved: Tooltip, (%x%`,%y%) SetTimer, TipOff, -2000 return TipOff: Tooltip return
- 574 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/01(水) 22:28:53 ID:81tLNstp0]
- OnMessageでできるんじゃないかな。
- 575 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/02(木) 03:15:35 ID:dUEx8qZ/0]
- ttp://lukewarm.s101.xrea.com/test/read.cgi/bbs/1146398137/124-
今年も嘘なの?
- 576 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/02(木) 19:29:48 ID:7vkTJaDR0]
- VistaでGuiをDestroyするとなぜかGuiが二度と表示できなくなってしまう・・・
XPでは動いたのに・・・
- 577 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 12:00:41 ID:THWk95Pp0]
- 需要あるかどうかわからないけど貼り、リモートデスクトップの背景色を透過させるスクリプト
リモートデスクトップクライアント側は背景画像なしで起動、スクリプト内部の「396da5」は各自で適宜書き換えてほしい あと、同時に2つ以上のリモートデスクトップクライアントが起動する状況は一切考慮してない あまりこういうもの書いた経験ないんで、書き方がアレなのはご勘弁を --- #Persistent SetTitleMatchMode,2 SetTitleMatchMode,Fast DetectHiddenWIndows,Off SetTimer RemoteTrans,100 return RemoteTrans: IfWinExist,リモート%A_Space%デスクトップ接続 ahk_class #32770 { If(TransFlag = 0) { DetectHiddenWIndows,On TransFlag = 1 WinSet,Trans,Off,ahk_class TSSHELLWND WinSet,TransColor,396da5 255,ahk_class TSSHELLWND DetectHiddenWIndows,Off } } else { TransFlag = 0 }
- 578 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 12:06:35 ID:zJiZ72fS0]
- >>576の続き
VistaだとGuiをDestroyすると、そのGui番号ではGuiが表示できなくなるみたい
- 579 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 13:42:03 ID:rZJUeqT00]
- 単にキーバインドの変更のためだけにこのソフトを使おうと思ってるのですが、
その目的に使うだけだったらこのソフトのメリットは大してないのでしょうか
- 580 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 13:56:52 ID:xW9QnJcO0]
- そんなこともない
だがCapsLockをどうにかしたいのなら諦めれ
- 581 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 14:13:49 ID:kSmNsRer0]
- changekeyと組み合わせれば、CapsLock問題もクリアーできるよ。
そして便利な使い方を考えるうちに、スクリプトにはまって、VBS、Perに手を出して、終いにはC言語の勉強を始めたのは俺。
- 582 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 14:25:10 ID:zJiZ72fS0]
- プログラミングの手間を省くために手を出すような奴もここにいる
できる範囲が大きすぎて全部AutoHotkeyでやろうとしてしまうのがデメリットかな
- 583 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 14:34:05 ID:mA/w516g0]
- >>581
あ、俺ガイル
- 584 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 15:03:21 ID:FNUcueKP0]
- ほんとこのソフトすごいよね便利すぎてハマるの分かる
- 585 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 15:17:57 ID:hXZrj5Ty0]
- ちょっと便利にするコードを書くうち脱線しすぎて気づけば、
数十万件ほどある2chのDAT自動分類とか、本文検索、カテゴリわけ、統計抽出で使ってる。 ホットキーは、このメインプログラムを呼び出すための ショートカットキーとして唯一、機能している。
- 586 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 15:51:05 ID:YxZpHoQz0]
- マウスジェスチャ以来の衝撃だったな、俺的には・・・AHKでも、ジェスチャできるけど。
>>581 俺もそうなりそう、CかPythonか迷ってるんだよね。どっちもやれってことか。 AHKでできることは、Cでも全部できるのかね?どう比較すればいいのか、よくわからない。
- 587 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 15:52:14 ID:YxZpHoQz0]
- マウスジェスチャ以来の衝撃だったな、俺的には・・・AHKでも、ジェスチャできるけど。
>>581 俺もそうなりそう、CかPythonか迷ってるんだよね。どっちもやれってことか。 AHKでできることは、Cでも全部できるのかね?どう比較すればいいのか、よくわからない。
- 588 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 15:54:42 ID:YxZpHoQz0]
- 初の連打、すまん。失敗したって出て、リロードしても書き込まれてなかったからorz
>>571 これ、リモートデスクトップ先でもとりあえず使える。Master音量しか出ないけど。
- 589 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/04(土) 18:46:06 ID:YxZpHoQz0]
- やっぱAltTabって特殊なんだね。
~LAlt & Tab:: KeyWait, Tab, T0.15 if Errorlevel = 0 send, {Blind}{Tab} if Errorlevel = 1 send, {Blind}+{Tab} settimer, altreturn, -1 return altreturn: keywait, LAlt send, {Return} return
- 590 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/06(月) 16:01:58 ID:Z06B8II+0]
- AVGがあると、Ahk2Exe.exeでコンパイル失敗するみたいね。
常駐シールドの例外設定すればいいらしい。
- 591 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/07(火) 04:03:27 ID:Mds5OALU0]
- #Persistent ;監視
Clipboard= ;クリップボードのクリア OnClipboardChange: ;クリップボードの内容が変更されたときに実行されるラベル これなんですが、これだとクリップボードの内容が同じ場合でも (同じ文字列などを続けてコピーした場合) 実行されてしまいます。 クリップボードの内容が同じ場合は実行しないようにしたいのですができるでしょうか?
- 592 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/07(火) 09:21:26 ID:tWsUW9OG0]
- 前のと比較すればいいだけでは
- 593 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/07(火) 15:30:24 ID:TGZWu1B70]
- >3後半の文字化けってUTF-8でソース保存すれば回避できる?
- 594 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/07(火) 16:07:21 ID:t+lMuHL/0]
- 文字化けではなくダメ文字、つまり正しく解釈された上での問題なのでそれでは回避出来ない
- 595 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/07(火) 19:45:06 ID:CUjFaHh90]
- Q: ファイルパスに駄目文字があるんだが、、、
A: 駄目文字微対策版( ttp://yak.myhome.cx/junks/#ahk.cp932 )を使え。
- 596 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/07(火) 19:57:38 ID:sZshg2Md0]
- 流行らせるにある、ホイールリダイレクト使ってるんだが、ところどころホイール操作自体できなくなります。
例)タスクトレイをホイールすることができない、デュアルモニタ環境で特定のモニタのFirefoxにホイールができない など *WheelDown:: CoordMode,Mouse,Screen MouseGetPos,x,y,hwnd,ctrl,3 wp:=0xFF880000|GetKeyState("LButton")|GetKeyState("RButton")<<1|GetKeyState("Shift")<<2|GetKeyState("Ctrl")<<3|GetKeyState("MButton")<<4|GetKeyState("XButton1")<<5|GetKeyState("XButton2")<<6 lp:=y<<16|x IfWinExist,ahk_id %hwnd% { SendMessage,0x84,0,%lp%,,ahk_id %ctrl% If ErrorLevel=4294967295 MouseGetPos,,,,ctrl,2 Loop,%A_EventInfo% PostMessage,0x020A,%wp%,%lp%,,ahk_id %ctrl% } どこか改善できないでしょうか?
- 597 名前:596 mailto:sage [2009/04/08(水) 12:13:50 ID:Ox1RALx+0]
- 他の症状としては
OpenOffice.orgの表計算ソフトCalcでスクロールが一切効かないです
- 598 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 13:15:09 ID:2zdTWL/U0]
- その場合は、CalccだけでなくOOo全般で、他にマンドプロンプトも効かないはず
ウィンドウ内にコントロール(窓)が無い構成だから(変数ctrlが空) メッセージ送信先を窓本体にすればよいんで、Loopの前の行に ctrl := !ctrl :? hwnd : ctrl を入れれば動くんじゃないかな 後のことは情報少ないし、環境も作れないから分かんない
- 599 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 13:43:07 ID:Ox1RALx+0]
- ありがとうございます。
でもctrl := !ctrl :? hwnd : ctrlだとエラーになります・・?
- 600 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 14:19:57 ID:2zdTWL/U0]
- typo だw
ctrl := !ctrl ? hwnd : ctrl
- 601 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 14:35:55 ID:Ox1RALx+0]
- >>600
本当にありがとうございました。Calc動くようになりました Firfoxのほうは動かないのですが諦めますorz
- 602 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 18:30:54 ID:MeqYpMzl0]
- 流行らせるページのリファレンスに While とかが載ってないorz
- 603 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 18:42:23 ID:R1fhUxJX0]
- もう更新されないだろうね
- 604 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 18:48:42 ID:HObCX3A80]
- 困った時は本家のリファレンス見た方がいいと思う
流行らせるの方は微妙に省略されてたりするんで、たまに本家を見ると新しい発見がある
- 605 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 18:52:32 ID:3ImCV3Nv0]
- wikiがほしいところ
- 606 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/08(水) 20:06:46 ID:HJw1Zxkl0]
- 今のAutoIt2ベースから
AutoIt3ベースで作り直してもらえると 多言語に強くなると思うのだけど まぁasciiしか使う必要がなければ関係ないっちゃないか
- 607 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 05:49:27 ID:JwzMpV8P0]
- 流行らせるページは見やすくていいな。
白背景は法律で規制したほうがいい。まぶし過ぎて目に悪い。
- 608 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 15:07:51 ID:DVG7YxSE0]
- レジストリいじらずにキーの入れ替えする方法を探してますが、
>3を読む限りahkでも無理そうですね。 流行らせるページを参考にscコードでCapsLockとCtrlを入れ替えたら Ctrlが常にONの状態になりました。何か方法ありませんか?・・・
- 609 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 15:48:55 ID:xEF1XKbe0]
- 色んな人がさんざん試しって解決法が無いからテンプレの最初にある
- 610 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 16:34:05 ID:p2tyHjkH0]
- ジョイスティックのアナログキー→矢印キー変換をこんな感じでやってるんだけど、
もうちょっと良い方法って無いのかな? あまりにも基本過ぎるみたいで検索にも引っかからない sleepjoy = 100 SetTimer, getjoy, 30 #Persistent return getjoy: GetKeyState, joyx, JoyX GetKeyState, joyy, JoyY if joyx between 49 and 51 if joyy between 49 and 51 return Gosub, ranjoy return ranjoy: if joyy > 75 Send {down} else if joyy < 25 Send {up} if joyx > 75 Send {right} else if joyx < 25 Send {left} sleep, sleepjoy return
- 611 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 19:16:26 ID:if/vCKuH0]
- 流行らせるページを見てもわからなかったので質問させてください
任意のウィンドウの状態(最大化・最小化)を知る方法はありませんか? サイズや座標はわかるようですが・・・
- 612 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 19:29:20 ID:/daiVpQd0]
- >>611
WinGetでCmdにMinMax
- 613 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 19:35:26 ID:nal87SU+0]
- >>611
>>551 あとは↓でMinMaxでページ検索 ttp://lukewarm.s101.xrea.com/commands/WinGet.html
- 614 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 20:02:00 ID:xEF1XKbe0]
- >>610
低級なものしか用意されていないみたい 結局「タイマーして、キー状態みて、何かする」ってコード書かなきゃならないっぽい
- 615 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 23:25:26 ID:T3nhlFEF0]
- 悩んでみたけど、俺の頭じゃ解決できなかったので質問させてください。
ホットキーを無効にする処理についてです。 変数の中身によって、特定のホットキーを無効にしたりすることはできないものでしょうか。 #全部無効/有効はSuspendによって可能なことは確認いたしました。 流行らせるページより、 > サブルーチンの最初の行が「Suspend,On」以外のSuspendコマンドになっているホットキーは、Suspend,Onが実行されても無効化されない。 このあたりをうまく使えばできるのでしょうが、書き方が悪いのかうまく動いてくれません。 解決法をご存じの方は教えていただけると助かります。
- 616 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/10(金) 23:34:00 ID:p2tyHjkH0]
- >>614 thx 結局ジョイスティックに関しては見やすくまとめるとこんな感じになるのかな
SendJoy1 = {up} SendJoy7 = {down} SendJoy5 = {right} SendJoy3 = {left} SendJoy8 = {down}{right} SendJoy6 = {down}{left} SendJoy2 = {up}{right} SendJoy0 = {up}{left} SleepJoy = 100 SetKeyDelay, 20 SetFormat, float, 0.0 SetTimer, GetJoy, 30 #Persistent return GetJoy: GetKeyState, joyx, JoyX GetKeyState, joyy, JoyY joyx := 0.018 * joyx -= 50 joyy := 0.018 * joyy -= 50 joyh := 4 + joyx + joyy *3 if joyh = 4 return Gosub, RunJoy return RunJoy: SendJoy := SendJoy%joyh% Send %SendJoy% sleep, SleepJoy return
- 617 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 00:49:53 ID:e4COaq2Q0]
- >>615
#1:: Hotkey, #2, Hoge, % (flg:=!flg) ? "On" : "Off" return Hoge: MsgBox, Hoge return
- 618 名前:>>615 mailto:sage [2009/04/11(土) 01:49:46 ID:rh+NBoz70]
- >>617
返信ありがとうございます。 ですが、私が思っていたこととはちょっとだけ違うような気がします。 #自分が思っていることをうまく伝えられなくてごめんなさい。 ですので、あとは自分で頑張ります。ありがとうございました。
- 619 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 02:16:39 ID:w6Dx6pM+0]
- >>618
どう違うのか書かないと、せっかく答えてくれた人も消化不良になるだろ。 自分ひとりだけよければ、それでいいのか?
- 620 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 02:58:52 ID:LqjZj8GK0]
- USBの外付けテンキーに、普通のキーボードのテンキーと別のコマンドを
Autohotkeyを使って割り当てる事ってできるんでしょうか? テンキーをプログラマブルキーボード的に使えないかと思うんですが キーボード側のテンキーと連動しちゃわないかと思いまして…
- 621 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 04:07:31 ID:1EEvkJ+r0]
- >>620
つ MagicKeyPad
- 622 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 04:19:05 ID:J5YLNUgU0]
- uusbd.sysでも使って
デバイス毎にホットキーやリマップが設定出来るようになったら夢が広がるんだけどな 外付けテンキー全般に言えるか分からんが マジェテンキーはNumLockがOnとOffの時とで異なるキーコードを送るようだから やりようによってはフルキーボード付属のテンキーと別の動作をすることが出来るかもね
- 623 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 05:45:21 ID:LqjZj8GK0]
- >>621
おおっ こんなソフトが! ありがとうございました。 Ahkで可能だったら最高だったんですが、現状ではできない感じなのでしょうかね。
- 624 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 07:39:15 ID:bNSgGuY10]
- >>615
617でダメならナニがしたいのかよくわからんが hotkeyコマンドで任意のホットキーをオン・オフ出来るからそれで良いんじゃないの?と思うが
- 625 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 08:46:33 ID:rh+NBoz70]
- >>619
そうですね。すみませんでした。 やりたかったこと: アプリケーションA専用のホットキーとして6つほど割り当てております。 そのほかにアプリケーションランチャー代わりとして5つほど割り当てているのですが、変数の中身の値によってそれだけをすべて無効にしたかったのです。 #あるキーを押せば無効になる、というものではなくあらかじめ設定用の変数を用意/設定をし、それによってスクリプトを走らせたと同時に有効/無効を切り替えられればな、と。 #走らせたあとは有効/無効を切り替えるということは考えていなかったです。 >>624 やぱ俺の頭が足りんよ リファレンスとにらめっこしてくるよ
- 626 名前:名無しさん@お腹いっぱい。 [2009/04/11(土) 08:47:29 ID:iBHZiqEC0]
- xpを使っています
autohotkeyのスクリプトから、そのスクリプトのショートカットをスタートアップに登録したいです A_ScriptFullPathでそのスクリプトのありかを取得 A_Startupでスタートアップフォルダのありかを取得 ここまでは分かっています。その先がわかりません。
- 627 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 08:55:36 ID:ZRhwazf80]
- FileCreateShortcut, %A_ScriptFullPath%, %A_Startup%\%A_ScriptName%.lnk
- 628 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 09:31:30 ID:bNSgGuY10]
- >>625
#IfWinActiveで特定のアプリにのみ有効なホットキーを設定 hotkeyでホットキーのオン・オフ切り替え このあたりを使えば望みの動作が出来ると思う 俺はよくiniファイルの設定を読み込ませてホットキーを動的に設定したりオン・オフしたりさせてるが それと同じ方法で実現できると思う hotkeyコマンドに変数展開使うだけだし
- 629 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 09:37:44 ID:e4COaq2Q0]
- >>625
「変数」は何処に存在するんだろうか? ; 起動毎にホットキーのOn/Offがトグルになるスクリプト OnExit, OnExitSub IniRead, IsHotkeyEnable, conf.ini, Hotkey, Enable, 0 ; 無ければ "0(=Off)"とする If (IsHotkeyEnable) { Hotkey, IfWinActive, ahk_class Progman ; デスクトップのみ Hotkey, #1, Key1, On Hotkey, #2, Key2, On } return ; 終了時にフラグを逆転して終了 OnExitSub: IsHotkeyEnable := !IsHotkeyEnable IniWrite, %IsHotkeyEnable%, conf.ini, Hotkey, Enable ExitApp Key1: MsgBox, Key1 Action return Key2: MsgBox, Key2 Action return
- 630 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 10:36:03 ID:iBHZiqEC0]
- >>627
ありがとうございました。
- 631 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 12:30:52 ID:G+GUTcDI0]
- >>608
keybatという1500円のソフトで可能だよ。さっき試した出来たよ。 俺はこれからAHKに乗り換えた当初に同じことをやろうとして苦労した覚えがある。 レジストリいじるソフトを使用してF13を導入して解決した。レジストリいじれないならkeybatだね。 人気ないけど、いいソフトだと思う。キーカスタマイズスレで罵倒された楽しい思い出があるけどw
- 632 名前:615 mailto:sage [2009/04/11(土) 19:33:36 ID:rh+NBoz70]
- >>629
iniに書き込んであります。 >>628,629 ヒントありがとうございます。 自分が思っていたような動作をするスクリプトが書けました。 とは言っても、約半分ぐらい629と同じですが。 お世話になりました! ありがとうございました。
- 633 名前:492 mailto:sage [2009/04/11(土) 23:31:57 ID:3TjMJxNW0]
- 以前書いたくるくるスクロールが不細工だったので書き直し。
おまけでくるくるスクロールの関数とカーソル上下でスクロールする関数を同梱しました。 トラックボールを使っている人にしか需要は無いと思います。 ttp://lukewarm.s101.xrea.com/up/file/108.zip
- 634 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 23:34:26 ID:YKimc9dt0]
- >>633
使わせていただきます!
- 635 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 23:47:34 ID:oqoLxhVT0]
- リマップで質問です。特定キーをトリガにして、リマップの内容を変更するのがうまくいきません。
添削してもらえませんか? -- vkAFsc130::PgDn ←デフォルト定義 vkAEsc12E::PgUp ←デフォ vkADsc120:: ← 問題のトリガ if flag = 100 { vkAFsc130::PgDn ←この定義で Duplicate してしまう vkAEsc12E::PgUp flag = 0 } else { vkAFsc130::Down vkAEsc12E::Up flag = 100 } return
- 636 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/11(土) 23:58:49 ID:e4COaq2Q0]
- そもそも、言語仕様にに沿ってない。つーか言語がめちゃくちゃなんだけど
>>615からのの流れを流用してHotkeyコマンド使うか、 リマップを捨てて、Sendでキー送るってカンジかな 後者なら↓みたいな感じ kAFsc130:: If flag = 100 Send, {PgDn} Else Send, {Down} return どうしてもリマップ捨てたくないなら AutoHotkey_L の #if 使う方がいいかも #if (flag==100) vkAFsc130::PgDn vkAEsc12E::PgUp #if (flag!=100) kAFsc130::Down vkAEsc12E::Up #if
- 637 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 00:08:41 ID:BvyA+lnB0]
- >>636
>そもそも、言語仕様にに沿ってない。つーか言語がめちゃくちゃなんだけど 滝汗 ありがとうございます。もうちょっと色々見てみます。
- 638 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 11:50:32 ID:9mFGO0zQ0]
- 無変換+zで、ひとつ下のウィンドウをアクティブに。
~vk1Dsc07B & z:: WinGetClass, classA, A a= WinGet, List, List,,,ningenshikkaku Loop,%List% { Hwnd := List%A_Index% SetFormat,Integer,H WinGet,s,Style,ahk_id %Hwnd% SetFormat,Integer,D if((!(s&0x08000000))&&((s&0x80)|| !(s&0x80000000))) { WinGetClass, class, ahk_id %Hwnd% if (a=1){ WinActivate, ahk_id %Hwnd% break } if (class=classA) a=1 } } return
- 639 名前:638 mailto:sage [2009/04/12(日) 13:07:26 ID:9mFGO0zQ0]
- >>638
すみません、これはダメだわ。GOMPlayer等、見つけられないものもあるw、まあ手動で足していけばいいか。 キーボード中心環境なら、上にいくのも付け足せば、最前面表示とかに行けて便利? Alt+Tabは順序が入れ替わって、使い辛いな。 無変換←→とかで、タスクバー順にアクティブにできたほうがいいけど、AHKでできるかな?
- 640 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 14:31:19 ID:dIdsRb2N0]
- タスクバーの情報を取得するのは公式フォーラムにあるというのがここでのFAQ
ttp://www.autohotkey.com/forum/topic18652.html キーボード派のWindow切り替えなら、こういうemacsのiswitchライクなのも良いと思う ttp://www.autohotkey.com/forum/topic33353.html
- 641 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 15:25:54 ID:9mFGO0zQ0]
- >>640
おお、d 上のは、情報が特殊なんだね。Dolphi製はTApplicationのほう取ってるし、hWndとかも何か特殊だ。 特殊だと思ったら、10進法でとってるのか。 TApplicationをどうにかしたら、タスクバー順にアクティブはできそうだね。 下のはいいね、好みw
- 642 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 16:41:10 ID:RL+Ry9QM0]
- 流行らせるページにwhileとかの説明が新しく追加されてるね。英語弱いので助かります。
- 643 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 20:46:21 ID:bhv5GHsf0]
- 1by1のビッグウィンドウを思い出したw
- 644 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 21:28:50 ID:XLkAadI10]
- スレ違いっぽいけど
admin権限なしでCtrl<->CapsLock交換できるソフトってない? autohotkeyでキー置換の大部分はできるんだけど これだけ困ってる。
- 645 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 21:54:14 ID:PppMsUH80]
- >>644
日本語ユーザーはやっぱりその壁にぶち当たるんだよな で、なんでautohotkeyではこのキーだけ駄目なんだろう 内部で特殊な処理をしているのかな
- 646 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 22:26:34 ID:r11nbAGs0]
- WheelAccel.ahkでIE上でホイールを早く回した場合に、スクロールが上手く加速されていないような気がします。
IE上で素早くホイールを回した場合でも、回転に応じたスクロールができるようになりませんでしょうか。
- 647 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/12(日) 23:39:09 ID:ln8RqTb30]
- IEのスムーズスクロールをOFFにする
A_EventInfo を考慮した加速方式にする
- 648 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/13(月) 03:50:01 ID:25xJ6v2w0]
- すみません、どなたかご教授お願いします。
プログラムに明るくなくて分かりづらい説明で申し訳ありませんが。 Photoshop使用時に「6」に 6::send +!r という風にキーを割り当ててます。(ブラシのモードが変更されるショートカット) それとは別にPhotoshopでは Shift+Alt+クリック で 「カラーサンプラーを配置する」という機能があるのですが、 どうもフォトショ使用中に時折、「6」を押した瞬間にクリックして ブラシモード切替と同時にサンプラーを配置してしまうのです。 上手いこと「6」と同時くらいにクリックしても Shift+Alt+クリック にならなくするような方策はないものでしょうか?
- 649 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/13(月) 04:42:51 ID:hmD/M1lx0]
- >>648
これを試してみては 6:: blockinput, on send, +!r blockinput, off return
- 650 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/13(月) 04:57:26 ID:25xJ6v2w0]
- >>649
激減しました、ありがとうございます! しかしガチャガチャ何度もやってると極稀にサンプラーが起動してしまうことがありました。 とりあえず大分改善されたのでとても助かります。 あつかましい話ですがついでにもう一つ質問させてください。 キーを押しっぱなしにすると連打が始まってしまいますが、これを 抑制するのってどうやればいいんでしょうか?
- 651 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/13(月) 05:18:04 ID:DVlSaX3W0]
- KeyWait, 6
return にすればいいかもしれないね。 それか、6 up::にしてキーを離したときに送るか。
- 652 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/04/13(月) 06:43:56 ID:hmD/M1lx0]
- >>650
>>649でダメなら #InstallMouseHook 6:: if !getkeystate("LButton", "P") send, +!r return 連打しないで押したままにしたいなら↓みたいな感じかな a:: send, {a down} keywait, a send, {a up} return
|

|