常用控件集合
本章介绍并学习路线中弹窗之前(包含弹窗)的所有控件
一、认识控件
本章将要学习的控件列表如下图所示,逐一讲解使用方法;
二、预备知识
2.1 控件结构体中通用字段
- AssignTo :绑定该控件类型指针,目的是后续业务中可以控制该控件属性;
- ToolTipText :作用是当鼠标移到该控件时,会浮窗显示提示信息;
三、控件使用
3.1 TextLabel
TextLabel{
AssignTo: &myMain.TextLabel,
Text: "我是文本标签",
},
3.2 TextEdit
TextEdit{
AssignTo: &myMain.TextEdit,
Text: "我是文本框",
ReadOnly: false, // false:文本框只读 true:文本框可读可写
ColumnSpan: 9,
},
3.3 Label
Label{
AssignTo: &myMain.Label,
Text: "我是标签",
},
3.4 NumberLabel
NumberLabel{
AssignTo: &myMain.NumberLabel,
Value: float64(521), //警告:这里给的默认值,一定要强转为int64,否则NumberLabel.Create时,断言失败就是0了。
},
3.5 NumberEdit
NumberEdit{
AssignTo: &myMain.NumberEdit,
Value: float64(10), //警告:这里给的默认值,一定要强转为int64,否则NumberLabel.Create时,断言失败就是0了。
},
3.6 LineEdit
LineEdit{
AssignTo: &myMain.LineEdit,
Text: "我是行编辑",
TextColor: walk.Color(walk.RGB(100, 100, 100)),
Enabled: true, // false:文本框只读 true:文本框可读可写
PasswordMode: true, //可选,输入内容后密文,显示******
MaxLength: 5, //设置最大输入字符数
TextColor:walk.RGB(218, 8, 9),//设置文本颜色
ReadOnly: true,//设置文本只读
},
// 获取输入框内容
myMain.LineEdit.Text()
3.7 CheckBox
CheckBox{
AssignTo: &myMain.CheckBox,
Text: "复选框",
ToolTipText: "单选、复选框",
Checked: true, //注意:true 默认选中,false:默认未选
},
// 在事件触发接口中,实现多个单选框使用时逻辑:
func OK_Clicked() {
switch {
case myMain.CheckBox_english.Checked():
le.SetText("英语系")
case myMain.CheckBox_sport.Checked():
le.SetText("体育系")
case myMain.CheckBox_maths.Checked():
le.SetText("数学系")
}
}
3.8 PushButton
PushButton{
Text: "按钮",
OnClicked: func() {
walk.MsgBox(nil, "我是弹框", "测试button", walk.MsgBoxIconInformation)
// 此处实现你想要做的业务
// ......
},
},
3.9 ComboBox
第一种,简单用法,默认显示选中苹果
ComboBox{
AssignTo: &myMain.ComboBox,
Model: []string{
"苹果", "草莓", "香蕉"}, //下拉菜单数据源
CurrentIndex: 0, // 默认显示model数据的索引
// 选中下拉菜单中某个选项时触发
OnCurrentIndexChanged: func() {
// 打印最新索引id
logger.Println(myMain.ComboBox.CurrentIndex())
}