GO QT5 水平垂直布局
完整代码
package main
import (
"github.com/therecipe/qt/core"
"github.com/therecipe/qt/gui"
"github.com/therecipe/qt/widgets"
"os"
)
func InitUI() *widgets
.QMainWindow
{
app
:= widgets
.NewQMainWindow(nil, 0)
app
.SetGeometry2(0, 0, 500, 400)
centralWidget
:= widgets
.NewQWidget(app
, core
.Qt__Widget
)
verticalLayout
:= widgets
.NewQVBoxLayout2(centralWidget
)
verticalLayout
.SetSpacing(0)
verticalLayout
.SetContentsMargins(0, 0, 0, 0)
topLayoutWidget
:= widgets
.NewQWidget(centralWidget
, core
.Qt__Widget
)
topLayoutWidget
.SetStyleSheet("background-color:red")
topLayoutWidget
.SetSizePolicy2(widgets
.QSizePolicy__Preferred
, widgets
.QSizePolicy__Expanding
)
verticalLayout
.AddWidget(topLayoutWidget
, 0, 0)
bottomLayoutwidget
:= widgets
.NewQWidget(centralWidget
, core
.Qt__Widget
)
bottomLayoutwidget
.SetStyleSheet("background-color:blue")
verticalLayout
.AddWidget(bottomLayoutwidget
, 0, 0)
hbox
:= widgets
.NewQHBoxLayout2(bottomLayoutwidget
)
spacerItem
:= widgets
.NewQSpacerItem(40, 20, widgets
.QSizePolicy__Expanding
, widgets
.QSizePolicy__Minimum
)
hbox
.AddItem(spacerItem
)
ok
:= widgets
.NewQPushButton2("OK", bottomLayoutwidget
)
hbox
.AddWidget(ok
, 0, 0)
cancel
:= widgets
.NewQPushButton2("Cancel", bottomLayoutwidget
)
hbox
.AddWidget(cancel
, 0, 0)
hbox
.AddItem(spacerItem
)
app
.SetCentralWidget(centralWidget
)
return app
}
func main() {
widgets
.NewQApplication(len(os
.Args
), os
.Args
)
app
:= InitUI()
app
.SetWindowIcon(gui
.NewQIcon5("images/app.ico"))
app
.SetWindowTitle("水平垂直布局")
fg
:= app
.FrameGeometry()
wc
:= widgets
.NewQDesktopWidget().AvailableGeometry2(app
).Center()
fg
.MoveCenter(wc
)
app
.Move(fg
.TopLeft())
app
.Show()
widgets
.QApplication_Exec()
}
预览
转载请注明原文地址:https://blackberry.8miu.com/read-30994.html