gocui是一个Go语言用来开发控制台应用的UI工具包。
主要特性:
最小化API.视图(窗口)实现接口io.ReadWriter.支持重叠视图可在运行时修改GUI全局或者是视图层级的快捷键绑定支持鼠标操作彩色文本输出可定制化的编辑模式易于构建可重用的UI部件,复杂的布局等示例代码packagemainimport("fmt""log""github.com/jroimartin/gocui")funcmain(){g,err:=gocui.NewGui(gocui.OutputNormal)iferr!=nil{log.Panicln(err)}deferg.Close()g.SetManagerFunc(layout)iferr:=g.SetKeybinding("",gocui.KeyCtrlC,gocui.ModNone,quit);err!=nil{log.Panicln(err)}iferr:=g.MainLoop();err!=nil&&err!=gocui.ErrQuit{log.Panicln(err)}}funclayout(g*gocui.Gui)error{maxX,maxY:=g.Size()ifv,err:=g.SetView("hello",maxX/2-7,maxY/2,maxX/2+7,maxY/2+2);err!=nil{iferr!=gocui.ErrUnknownView{returnerr}fmt.Fprintln(v,"Helloworld!")}returnnil}funcquit(g*gocui.Gui,v*gocui.View)error{returngocui.ErrQuit}应用效果
评论