[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 05/10 00:39 / Filesize : 279 KB / Number-of Response : 813
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

AutoHotkey スレッド part7



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






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<279KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef