AutoHotkey スレッド part7at SOFTWARE
AutoHotkey スレッド part7 - 暇つぶし2ch514:名無しさん@お腹いっぱい。
09/03/22 11:30:10 GrExewU20
こんにちは
MouseGesture2、2008/10/07版をVista SP1で使わせて貰ってます。
マウ筋の機能で「設定ホイール回転でアクティブ」という機能があるのですが
(ArtTipsというソフトでは、SETTING>快適マウスホイール>快適マウスホイールを使用する>フォーカス移動を行う)
これと同じ挙動をMouseGesture2で実現させるにはどのように記述すればうまく行きますか?

あと、JaneDoe Viewなど一部のソフトでWinMinimizeを使って最小化すると
デスクトップ左下にタイトルバーの小さくなったものが、残って最小化されてしまいます。
これを回避する方法を教えて下さい。

515:名無しさん@お腹いっぱい。
09/03/22 11:41:41 scspGd4S0
簡単なのはWheelUpとWheelDownのDefault(及び各々の条件)に
WinActivate
を記述する

516:名無しさん@お腹いっぱい。
09/03/22 11:46:37 T0zgn4OC0
流行らせるページのホイールリダイレクトでもいいんじゃね

517:名無しさん@お腹いっぱい。
09/03/22 11:56:01 4c0Fopck0
アクティブにしつつスクロールするなら両方

518:名無しさん@お腹いっぱい。
09/03/22 12:23:38 GrExewU20
>>515-517
親切に即レスありがとうございます。
>簡単なのはWheelUpとWheelDownのDefault(及び各々の条件)に
>WinActivate
>を記述する
が一番挙動が近かったのですがマウ筋とArtTipsの機能は
Xplorer2などの二画面ファイラーや小ウィンドウがあるようなソフトに対しても
各ウィンドウをホイールの回転でアクティブに出来るので、このような挙動を望んでいますが
無理な場合WinActivateでアクティブにするようにしたいと思います。

しかし、この場合ホイールUp、Dnでアクティブになったあと普通にスクロールが利かなくなってしまいますよね?

519:名無しさん@お腹いっぱい。
09/03/22 12:46:54 ZBRd96Tp0
>>490 をファイル選択ダイアログでも効くようにした
注意) 全角スペース利用、誤爆が無いとは言えない

; UpperDirOne
LButton::
 if (A_ThisHotkey==A_PriorHotkey && A_TimeSincePriorHotkey<300) {
  MouseGetPos,,,,classNN
  if (classNN=="SysListView321") {
   ControlGetText, text, SysListView321, A
   if (text == "FolderView") {
    ControlGet, selected,List,Selected, SysListView321, A
    if (!selected)
     Send, {BackSpace}
   }
  }
 }
 Send, {LButton Down}
 KeyWait, LButton
 Send, {LButton Up}
 return


520:名無しさん@お腹いっぱい。
09/03/22 17:35:30 Rn9QKfmc0
MouseGesture2の設定で動作割り当てのキー操作を発生させるのパラメーターに
無変換キーの2回押しを設定したくて{無変換}{無変換}とやってみたのですが
認識してくれません。無変換キーは何で登録すれば良いでしょうか?

521:名無しさん@お腹いっぱい。
09/03/22 17:37:47 Biaw3oNa0
>>520
URLリンク(lukewarm.s101.xrea.com)

522:名無しさん@お腹いっぱい。
09/03/22 18:04:15 Rn9QKfmc0
>>521
ありがとうございます。そのページは見落としていました。
早速、カーソルが画面左下角に接触で1秒遅らせて無変換を2回押しがしたくて動作に
if(!MG_Timer(-1000)){
Send,{vk1Dsc07B}{vk1Dsc07B}
}

if(!MG_Timer(-1000)){
Send,{vk1Dsc07B}
MG_Wait(100)
Send,{vk1Dsc07B}
}
など、やってみたのですがうまく動きません。
どなたかアドバイスお願い致します。

523:名無しさん@お腹いっぱい。
09/03/22 23:07:53 gJvAxqMw0
動作の確認音にSoundbeepを使ってたけど、パソコン変えたらビープが鳴らないw

524:名無しさん@お腹いっぱい。
09/03/23 09:06:05 Y2hrPoG60
とりあえず転載、ID:GrExewU20 と ID:Rn9QKfmc0 はモリタポ用意して制作者の教えを乞え
URLリンク(lukewarm.s101.xrea.com)

> 123 名前:管理人 ★[] 投稿日:2009/03/23(月) 06:07:20
> 2chのAutoHotkeyスレにMouseGesture.ahkの質問が書かれていたのに、DION規制で書き込めなくて困る。
> 誰か親切な人があと555モリタポほど恵んでくれれば、p2で書き込めるのだが。
> URLリンク(find.2ch.net)エユ、「、熙ャ、ネ、ヲ、エ、カ、、、゙



しかしDION規制まじむかつく、Viewは何故か24時間以上起動させっぱだと●ログイン無効になるので
いちいち再起動させなくちゃいけなくて面倒だ

525:名無しさん@お腹いっぱい。
09/03/23 09:53:24 Edo9xp5W0
>>3のとおりに、CapsLockをF13~F24に割り当てようと思うんだけど、
Change Keyってどうやってこれ割り当てるの??
似たようなレジストリ変更タイプのキーチェンジソフトいくつか探してみたが、
どれもF12までしか割り当てられないっぽい・・・

526:名無しさん@お腹いっぱい。
09/03/23 12:36:14 WUKQO+dS0
>>522
Send,{vk1Dsc07B}{vk1Dsc07B} → Send,{vk1Dsc07B 2}

MG_Wait(100) → Sleep,100

>>518
Jane Doe Style は「ウィンドウ(W)」→「最小化(M)」
があるのでそれを実行させればいいんじゃない?
Send,!w
Send,m

それかJane Doe Styleのショートカットキーのカスタマイズで
最小化にキーを割り当ててそれをSendするとか。

アクティブにしてスクロールは
アクティブした後にWheelUp(Down)を送ればいいじゃない。
あと、コンボボックスをアクティブにしようとすると
コンボボックスが消えるのでアクティブにしないようにしとけば
概ね支障なく動くはず。

527:名無しさん@お腹いっぱい。
09/03/23 12:36:56 WUKQO+dS0
<< >>526の続き >>

;WU_ の Default に↓の2行を追記する。
gosub, CursorUnderActivate
Send,{WheelUp}

;WD_ の Default に↓を2行を追記する。
gosub, CursorUnderActivate
Send,{WheelDown}

;MG_User.ahk をテキストエディタで開き、以下を「サブルーチン定義」内にコピペ
;マウスカーソル下をアクティブにする関数
CursorUnderActivate:
MouseGetPos,,, m_id, m_control
WinGetClass, m_class, ahk_id %m_id%
;マウスカーソル下がコンボボックス(ドロップダウンリスト)ならreturn
If(RegExMatch(m_control, "ComboLBox\d+"))
return
;マウスカーソル下が非アクティブならアクティブ化
IfWinNotActive, ahk_id %m_id%
{
SetWinDelay,-1
WinActivate
SetWinDelay,100
}
return

;これで支障が出るなら>>517の方法がいいと思う。

528:名無しさん@お腹いっぱい。
09/03/23 12:39:05 WUKQO+dS0
あ、ウィンドウクラスは必要ないので↓は要らないや・・・
WinGetClass, m_class, ahk_id %m_id%

529:名無しさん@お腹いっぱい。
09/03/23 12:40:24 WUKQO+dS0
×;マウスカーソル下をアクティブにする関数
○;マウスカーソル下をアクティブにするサブルーチン

530:名無しさん@お腹いっぱい。
09/03/23 13:54:01 1ZxaOcnN0
>>525
K SC Type Up/Dn Elapsed   Key
------------------------------------------------
7C 064  i   u    0.04    F13
7D 065  i   u    0.04    F14
7E 066  i   u    0.04    F15
7F 067  i   u    0.04    F16
80 068  i   u    0.04    F17
81 069  i   u    0.04    F18
82 06A  i   u    0.04    F19
83 06B  i   u    0.04    F20
84 06C  i   u    0.04    F21
85 06D  i   u    0.04    F22
86 06E  i   u    0.04    F23
87 076  i   u    0.04    F24

531:名無しさん@お腹いっぱい。
09/03/24 23:15:50 mXwaygr80
多重起動を検知したくて以下のようにしたんだけど、
除外タイトルって効いて無い
それともPIDとかでの除外は無理なのかな

#SingleInstance, OFF
Process, Exist
myPid:=ErrorLevel
DetectHiddenWindows,On
IfWinExist, %A_ScriptFullpath% ahk_class AutoHotkey,,ahk_pid %myPid%
 MsgBox, あり
Else
 MsgBox, なし


532:名無しさん@お腹いっぱい。
09/03/25 01:46:19 zeEEOJ2T0
>>531
>>144,147,153

前々スレに多重起動検知で終了とかはあったよ。
タイトルが一緒でPIDが違うならで、判別してた。

一部だけ引用
;自分の情報を取得
DetectHiddenWindows, On
Process,Exist
pid:=ErrorLevel
WinGetTitle, g_scriptTitle, ahk_pid %pid%
WinGet, hwnd, id, ahk_pid %pid% ahk_class AutoHotkey
;ahk_class AutoHotkeyのウィンドウを全て列挙
WinGet, ahk_id_list, list, ahk_class AutoHotkey
Loop, %ahk_id_list%{
this_id:=ahk_id_list%a_index%
ahk_id_list%a_index%=
WinGetTitle, this_title, ahk_id %this_id%
if(g_scriptTitle==this_title && hwnd!=this_id){ ;自分以外で同じタイトルを見つけたら終了メッセージを投げる。

533:名無しさん@お腹いっぱい。
09/03/25 08:36:04 zeEEOJ2T0
暇だったから、作ってみた。あまりの使えなさに吹いたw
#persistent
CoordMode, Mouse, Screen
Settimer, Expose
return

Expose:
MouseGetPos, X, Y
if (Y<1){
;左右に並べて表示
SendMessage,0x111,405,,,ahk_class Shell_TrayWnd
keywait, LButton, D
KeyWait, LButton
;元に戻す
SendMessage,0x111,416,,,ahk_class Shell_TrayWnd
Loop
{
MouseGetPos, X, Y
if (Y>2)
break
}
}
return

534:名無しさん@お腹いっぱい。
09/03/25 13:01:45 UMyjgm290
>>525
俺はchangekeyでF13を割り当ててるよ。


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