package main
import (
"os"
"ttqt/uigen"
"fmt"
"github.com/therecipe/qt/core"
"github.com/therecipe/qt/widgets"
)
func main() {
_translate := core.QCoreApplication_Translate
app := widgets.NewQApplication(len(os.Args), os.Args)
// 创建窗口
window := widgets.NewQMainWindow(nil, 0)
// 显示窗口
window.Show()
// 加载UI界面
var win uigen.UIMainwindowMainWindow
// 绑定
win.SetupUI(window)
// ---------------------- 测试事件绑定 --------------
// 设置按钮触发,触发退出程序
win.PushButtonStartCheck.ConnectClicked(func(checked bool) {
fmt.Println("点击按钮,开始检测")
win.LabelCheck01.SetText(_translate("MainWindow", RedFont("不通过"), "", -1))
})
win.PushButtonCloseWindow.ConnectClicked(func(checked bool) {
fmt.Println("关闭窗口,按钮")
window.Close()
})
// --------------- 启动程序 ----------------
app.Exec()
}
func RedFont(text string) string {
s := fmt.Sprintf("<html><head/><body><p><span style=\" color:#ff0000;\">%v</span></p></body></html>", text)
return s
}
// func main() {
// app := widgets.NewQApplication(len(os.Args), os.Args)
//
// // 创建窗口
// window := widgets.NewQMainWindow(nil, 0)
//
// // 设置大小
// window.SetMinimumSize2(500, 500)
//
// // 设置窗口标题
// window.SetWindowTitle("U盘质量检测工具 --44开发")
//
// // 显示窗口
// window.Show()
//
// app.Exec()
// }
使用工具,.ui -> .go
#!/bin/bash
# ui界面界面文件生成go语言代码
goqtuic -ui-file mainwindow.ui
编译,运行
#!/bin/bash
# 编译
qtdeploy build linux ttqt
# 运行
./deploy/linux/ttqt