LoginSignup
2
2

More than 5 years have passed since last update.

AutoHotKeyで簡単GUIアプリを作るのだ

Last updated at Posted at 2018-03-17

開発環境を作ろう

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を表示するダケのアプリが完成しました。

hoge.ahk.png

ステータスバーもあるし、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

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2