Go版GTK:常用控件—行编辑

原文地址:https://blog.csdn.net/tennysonsky/article/details/79272999

行编辑,只允许输入一行内容的控件,如密码输入框。 
这里写图片描述

glade设计如下: 
这里写图片描述

常用信号:

信号标识 触发条件
“activate” 行编辑区内部按回车键时触发

示例代码:

package main

import (
    "fmt"
    "os"

    "github.com/mattn/go-gtk/gtk"
)

func main() {
    gtk.Init(&os.Args)

    builder := gtk.NewBuilder()       //新建builder
    builder.AddFromFile("test.glade") //读取glade文件

    // 获取窗口控件指针,注意"window1"要和glade里的标志名称匹配
    window := gtk.WindowFromObject(builder.GetObject("window1"))
    window.SetSizeRequest(480, 320) //设置窗口大小

    //获取entry控件
    entry := gtk.EntryFromObject(builder.GetObject("entry1"))

    entry.SetText("123456")                       //设置内容
    fmt.Println("entry text = ", entry.GetText()) //获取内容
    //entry.SetVisibility(false)                  //设置不可见字符,即密码模式
    //entry.SetEditable(false)                    //只读,不可编辑
    entry.ModifyFontSize(30) //修改字体大小

    //信号处理,当用户在文本输入控件内部按回车键时引发activate信号
    entry.Connect("activate", func() {
        fmt.Println("entry text = ", entry.GetText()) //获取内容
    })

    //按窗口关闭按钮,自动触发"destroy"信号
    window.Connect("destroy", gtk.MainQuit)

    window.ShowAll()

    gtk.Main()
}

程序运行效果: 
这里写图片描述

猜你喜欢

转载自blog.csdn.net/dodod2012/article/details/81480822
今日推荐