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

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

Go言語でGladeを使ってGTK+3プログラミング

   

前回、GTK+3/Gladeのプログラミングについて書きました。

今回はC言語ではなくGo言語でGladeで作成したUIを呼び出してみようと思います。

Gladeは前回と同じものを使います。作り方は上のリンクから参照ください。↓こんな感じで作りました。

 

gotk3/gotk3パッケージのインストール

Go言語でGladeを使う場合は、gotk3をインストールする必要があります。

この記事でmattn/go-gtk/gtkパッケージを使いましたが、Gladeを使う場合はgotk3/gotk3パッケージです。以下のコマンドでインストールしましょう。少々時間はかかります(数分はかかったかな)。

$ go get github.com/gotk3/gotk3/...
 

 

Go言語側のソースコード

こちらがGo言語側のソースコードです。わかりやすくするためにエラー処理はすべて除外しました。

package main

import "github.com/gotk3/gotk3/gtk"

func main() {
  gtk.Init(nil)
  builder, _ := gtk.BuilderNew()
  builder.AddFromFile("hello.glade")
  obj, _ := builder.GetObject("window1")
  window := obj.(*gtk.Window)
  window.Connect("destroy", gtk.MainQuit)
  window.ShowAll()
  gtk.Main()
}

 

$ go run test.go で実行すると以下の通りうまく行きました。

 

GTKを使うのにC言語が良いかGo言語の方が良いか迷いますね。しばらくパラで使って評価してみようと思います。

 

スポンサーリンク

 - Go言語, Gtk