非IT企業に勤める中年サラリーマンのIT日記

非IT企業でしかもITとは全く関係ない部署にいる中年エンジニア。唯一の趣味がプログラミングという”自称”プログラマー。

Go言語/GTK+3でGUIプログラミングをやってみた

      2021/01/13

前回、LinuxMintにGTK+3を導入しましたが、

C言語で制御するよりどうせならモダンな言語でやってみようと思い、今回Go言語で扱ってみることにしました。今回はGo言語からGUIフォーム上にHello Worldと表示するまでの手順を書きます。

ちなみにLinux Mint(ubuntu系)へのGo言語のインストールはこちらをご覧ください。

GTK+3のインストール

Go言語でGTK+3を使用する場合は、Gtk+3そのものと、Goのライブラリをインストールする必要があります。

$ sudo apt-get install libgtk2.0-dev libglib2.0-dev libgtksourceview2.0-dev
$ go get github.com/mattn/go-gtk/gtk
 

 

ソースコード

以下がソースコードです。ウィンドウにHello Worldと表示するだけの簡単なプログラムです。

package main

import "github.com/mattn/go-gtk/gtk"

func main() {
  gtk.Init(nil)
  window := gtk.NewWindow(gtk.WINDOW_TOPLEVEL)
  window.SetTitle("Hello World")
  window.SetSizeRequest(400, 300)
  window.Connect("destroy", gtk.MainQuit)

  label := gtk.NewLabel("Hello World")
  window.Add(label)

  window.ShowAll()
  gtk.Main()
}
 

 

実行してみる

以下のコマンドで実行します。

$ go run hello_gtk.go
 

 

ご覧の通り実行できました。成功です。

 

RustかGoかどちらにするか迷ったんですが、Rustの情報があまりなく今回Go言語を選んだ次第です。言語の能力の高さより情報量の方が大事ですね。

 

スポンサーリンク

 - Go言語, Gtk