案例说明
- 关闭一个窗口可以点击标题栏上的X。
- 在下面的例子中,我们将展示我们如何通过编程来关闭窗口。
demo.go
package main
import (
"fmt"
"github.com/therecipe/qt/gui"
"github.com/therecipe/qt/widgets"
"os"
)
func center(app *widgets.QMainWindow) {
qr := app.FrameGeometry()
cp := widgets.NewQDesktopWidget().AvailableGeometry2(app).Center()
qr.MoveCenter(cp)
app.Move(qr.TopLeft())
}
func InitUi() *widgets.QMainWindow {
app := widgets.NewQMainWindow(nil, 0)
app.SetWindowTitle("Qt 教程")
app.SetGeometry2(300, 300, 300, 220)
app.SetWindowIcon(gui.NewQIcon5("images/app.ico"))
center(app)
btn := widgets.NewQPushButton2("关闭按钮", app)
btn.Resize(btn.SizeHint())
btn.Move2(50, 50)
btn.ConnectClicked(func(checked bool) {
fmt.Println("关闭窗口")
app.Close()
})
btn.Show()
return app
}
func main() {
widgets.NewQApplication(len(os.Args), os.Args)
app := InitUi()
app.Show()
widgets.QApplication_Exec()
}