AutoHotKeyで簡単GUIアプリを作るのだ
開発環境を作ろう
AutoHotKeyが無いとはじまらないココでダウンロード
書くのはテキストエディタ、メモ帳でもなんでもいいです。
フリーで使えてAHKも対応してるの(色が付いたり)を紹介しておきます。
Visual Studio Code - Microsoft
https://www.microsoft.com/ja-jp/dev/products/code-vs.aspx
サクラエディタ
http://sakura-editor.sourceforge.net/
とりあえずGUI表示してみる hoge.ahk
/*
hoge.ahk
AutoHotKeyで簡単GUIアプリを作るのだ
*/
; Config ______________________________________________________________
AppName := "AutoHotKeyで簡単GUIアプリを作るのだ"
WindowColor := "55C500"
FontColor := "FFFFFF"
ControlColor := "FFFFFF"
; GUI _________________________________________________________________
GUI,Color, %WindowColor%, %ControlColor%
GUI, Margin, 10, 10
; ヘッダ
GUI, Font, S18 Bold ; フォントサイズを指定
GUI, Add, Text, C%FontColor% GdevReload, %AppName% ; AppName表示
GUI, Font, S9 Norm
GUI, Add, StatusBar ; ステータスバーをくっつけます
SB_SetText("SB_SetText(""ほげで書き換え"")")
GUI, Show, X0 Y0 ; GUI終わり とりあえず表示
return
; /GUI ________________________________________________________________
; リロード
devReload:
Reload
return
; 閉じたりCtrl+Qで終了
^Q::ExitApp
GuiClose:
ExitApp
return
Quiita色でAppNameを表示するダケのアプリが完成しました。
ステータスバーもあるし、AppNameをクリックすると自身をリロードします。
とても簡単…
しかしきもちわるい文法ですね
まず代入が:=てなんだよ。
=(イコール)でも代入できるのですが、値が文字列で処理されます。
AppName := "AutoHotKeyで簡単GUIアプリを作るのだ"
AppName = AutoHotKeyで簡単GUIアプリを作るのだ
上記は同じ。クオート省けて一見便利そうだけど、関数とかx + 1とか代入する時文字列にされてよくミスるので、ぼくはahkの代入は:=を使う事にしています。
変数の展開は %Val% です。
% Val のように %(空白)Val とすると以後が全部展開になるようです。
%(空白)Val1 Val2 Val3…
きもちわるい。
文字列の変数くっつけるのは
hoge := fuga . piyo
.(ドット)で結合するんだけど
hoge := fuga.piyo
だとエラーになります。めんどくせぇ。
空白開けてあげましょう。
コメントは/* コメント */と ;コメント が使えます。きもちわるくない。
; /GUIの下の部分はラベルです。
AppNameをクリックするとリロードする仕組みです。
AppName表示の所でOption GdevReloadで触ったらdevReload:ラベルしろ!と命令しています。
GはきっとGotoのGですね。
GuiClose:はAHKの予約語です。
^はCtrl QはQキー Ctrl+Qでもここ来なさい ExitApp
独特な仕様多いけどGUIが簡単に作れるし、exe書き出しもできるので便利かも。
ベースができたので色々なGUIを追加していこうと思います。
つづく
参考
AutoHotkey Wiki
http://ahkwiki.net/Top
Author And Source
この問題について(AutoHotKeyで簡単GUIアプリを作るのだ), 我々は、より多くの情報をここで見つけました https://qiita.com/yopisoft/items/2db525f0164a1c6b2591著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .