代码拉取完成,页面将自动刷新
package main
import (
"fmt"
"github.com/ying32/govcl/vcl"
_ "github.com/ying32/govcl/vcl/exts/winappres"
"github.com/ying32/govcl/vcl/types"
)
func main() {
vcl.Application.Initialize()
vcl.Application.SetShowHint(true)
mainForm := vcl.Application.CreateForm()
mainForm.SetPosition(types.PoScreenCenter)
form2 := vcl.Application.CreateForm()
form2.SetCaption("Form2")
stb := vcl.NewStatusBar(form2)
stb.SetParent(form2)
stb.SetSimpleText("状态条")
// 窗口全局show提示
mainForm.SetShowHint(true)
button := vcl.NewButton(mainForm)
button.SetParent(mainForm)
button.SetCaption("按钮1")
// 长提示,后面使用 | 分割
button.SetHint("这是一个提示|后面可以是长提示")
button.SetBounds(10, 20, 100, 30)
button.SetOnClick(func(sender vcl.IObject) {
form2.Show()
})
button = vcl.NewButton(mainForm)
button.SetParent(mainForm)
button.SetCaption("按钮2")
button.SetHint("提示。好好好好好。。。。。。。。。。。。。")
button.SetBounds(10, 60, 100, 30)
statusbar := vcl.NewStatusBar(mainForm)
statusbar.SetParent(mainForm)
statusbar.SetName("statusbar")
// 右下角出现可调整窗口三角形,默认显示
//statusbar.SetSizeGrip(false)
// 当开启后,菜单的或者按钮的提示会出现在panel上
statusbar.SetAutoHint(true)
// 一般配合AutoHint使用
statusbar.SetSimplePanel(true)
// 原本是不需这下面这样的,在dll中创建的貌似有些问题,所以手动来操作了
vcl.Application.SetOnHint(func(sender vcl.IObject) {
if statusbar.IsValid() {
if statusbar.SimplePanel() {
statusbar.SetSimpleText(vcl.Application.Hint())
} else {
if statusbar.Panels().Count() > 0 {
statusbar.Panels().Items(0).SetText(vcl.Application.Hint())
}
}
}
})
pnl := statusbar.Panels().Add()
pnl.SetText("pnl1")
pnl.SetWidth(100)
pnl = statusbar.Panels().Add()
pnl.SetText("pnl1")
pnl.SetAlignment(types.TaCenter)
pnl.SetWidth(100)
pnl = statusbar.Panels().Add()
pnl.SetText("第二格")
pnl.SetAlignment(types.TaRightJustify)
pnl.SetWidth(100)
var i int32
for i = 0; i < statusbar.Panels().Count(); i++ {
fmt.Println("text:", statusbar.Panels().Items(i).Text())
}
vcl.Application.Run()
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。