Go语言在Linux上的图形界面开发可以通过多个流行的GUI库来实现,以下是一些常用的库及其入门指南:
package main
import (
"github.com/therecipe/qt/core"
"github.com/therecipe/qt/widgets"
)
func main() {
app := widgets.NewQApplication(nil)
window := widgets.NewQMainWindow(nil)
window.SetWindowTitle("Hello, World!")
window.SetFixedSize(true)
centralWidget := widgets.NewQWidget(window)
centralWidget.SetLayout(widgets.NewQVBoxLayout())
label := widgets.NewQLabel2("Hello, World!", centralWidget)
centralWidget.AddWidget(label)
window.SetCentralWidget(centralWidget)
window.Show()
app.Exec()
}
package main
import (
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/widget"
)
func main() {
myApp := app.New()
myWindow := myApp.NewWindow("Hello")
hello := widget.NewLabel("Hello Fyne!")
quit := widget.NewButton("Quit", func() {
myApp.Quit()
})
myWindow.SetContent(container.NewVBox(hello, quit))
myWindow.ShowAndRun()
}
package main
import (
"github.com/gotk3/gotk3/gtk"
"log"
)
func main() {
gtk.Init(nil)
win, err := gtk.WindowNew(gtk.WINDOW_TOPLEVEL)
if err != nil {
log.Fatal("Unable to create window:", err)
}
win.SetTitle("Hello GTK")
win.Connect("destroy", func() {
gtk.MainQuit()
})
win.ShowAll()
gtk.Main()
}
在开始编写GUI应用之前,需要准备以下环境:
go get fyne.io/fyne/v2
以上是Go语言在Linux上进行图形界面开发的一些基本步骤和示例代码。通过选择合适的GUI库,如Qt5-go、Fyne或GTK,开发者可以轻松创建出功能丰富的Linux GUI应用。希望这些信息对您有所帮助。