设为首页 加入收藏

TOP

Go Walk教程 - 流程控制( switch)
2017-09-30 13:51:52 】 浏览:7691
Tags:Walk 教程 流程 控制 switch

Go的 switch 非常灵活,表达式不必是常量或整数,执行的过程从上至下,直到找到匹配项,不要break;

var score =98
var result string
switch score/10 {
  case 9,10:result="优秀"
  case 8:result="良好"
  case 6,7:result="及格"
  default:result="不及格"
}

switch 后面的表达式甚至不是必需的  

var score =-1
var result string
switch  {
  case score<0:result="负数"
  case score=0:result="零"
  case score>0:result="正数"  
}

  利子:

package main
import (
	"log"	
)
import (
	"github.com/lxn/walk"
	. "github.com/lxn/walk/declarative"
)
var le *walk.LineEdit
var sport,maths,english *walk.RadioButton
func main() {
	if _, err := MainWindow1.Run(); err != nil {
		log.Fatal(err)
	}
	log.Fatal(Bind("enabledCB.Checked"))
}
var MainWindow1=MainWindow{
  Title:   "MainWindow",
  MinSize: Size{300, 200},
  Layout:  VBox{},   
  Children: widget,
}

var widget=[]Widget{
  LineEdit1,
  RadioButtonSport, 
  RadioButtonMaths,
  RadioButtonEnglish,
  PushButtonOK,
}

var LineEdit1=LineEdit{  
  AssignTo: &le,
}

var RadioButtonSport=RadioButton{
  AssignTo: &sport,
  Text:    "体育系",  
}
var RadioButtonMaths=RadioButton{
  AssignTo: &maths,
  Text:    "数学系", 
}
var RadioButtonEnglish=RadioButton{
  AssignTo: &english,
  Text:    "英语系", 
}
var PushButtonOK=PushButton{
  Text: "OK",
  OnClicked:OK_Clicked,
}
func OK_Clicked(){  
  switch {
    case english.Checked():
      le.SetText("英语系")
    case sport.Checked():
      le.SetText("体育系")
    case maths.Checked():
      le.SetText("数学系")
  }
}

  

RadioButton为单选按钮,可以分组,

radiobuttongroup和radiobuttongroupbox

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇golang下使用ini配置文件(widuu/g.. 下一篇golang os.OpenFile

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目