行编辑,仅仅同意输入一行内容的控件。如password输入框。

行编辑的创建:

GtkWidget *gtk_entry_new(void);

返回值:行编辑指针

设置行编辑内容的最大长度:

void gtk_entry_set_max_length(GtkEntry *entry,

gint max);

entry:行编辑

max:长度的最大值。这里填0代表长度不作限制

设置行编辑的文本内容:

void gtk_entry_set_text(GtkEntry *entry,

const gchar *text);

entry:行编辑

text:文本内容

获取行编辑的内容:

const gchar *gtk_entry_get_text(GtkEntry *entry);

entry:行编辑

返回值:获取到的行编辑内容

设置编辑控件是否同意编辑:

void gtk_editable_set_editable(GtkEditable *editable,

gboolean is_editable);

editable:须要操作的控件

is_editable:TRUE代表能同意编辑。默认属性,FALSE不同意编辑

设置行编辑的内容是否可视(不能可视相当于password模式,看不到文本的内容):

void gtk_entry_set_visibility(GtkEntry *entry,

gboolean visible);

entry:行编辑

visible:TRUE可视,FALSE不可视

经常使用信号:"activate"

当用户在文本输入控件内部按回车键时引发activate信号;

样例代码例如以下:

#include <gtk/gtk.h>

void entry_callback(GtkWidget *widget, gpointer entry)
{
const gchar *entry_text; //获取文本内容
entry_text = gtk_entry_get_text(GTK_ENTRY(entry)); printf("entry content:%s\n", entry_text); return;
} int main(int argc, char *argv[])
{
//1.gtk环境初始化
gtk_init(&argc, &argv); //2.创建一个window
GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
//设置窗体大小
gtk_widget_set_size_request(window, 200, 50);
g_signal_connect(window,"destroy", G_CALLBACK(gtk_main_quit), NULL); //3.创建一个行编辑
GtkWidget *entry = gtk_entry_new();
gtk_container_add(GTK_CONTAINER(window), entry); //4.设置行编辑显示最大字符的长度
gtk_entry_set_max_length(GTK_ENTRY(entry), 100);
//设置行编辑的内容
gtk_entry_set_text(GTK_ENTRY(entry), "hello entry"); //5.当我们在行编辑中敲回车的时候运行的动作
g_signal_connect(entry, "activate", G_CALLBACK(entry_callback), entry); //6.显示全部窗体
gtk_widget_show_all(window); //7.主事件循环
gtk_main(); return 0;
}

执行结果:

源代码下载:http://download.csdn.net/download/lianghe_work/8944435

转自:

GTK经常使用控件之行编辑( GtkEntry )的更多相关文章

  1. DevExpress2011控件教程)编辑控件(comboBox,AspxCheckBox) 范例1

    DevExpress2011控件教程)编辑控件(comboBox,AspxCheckBox) 范例1 AspxCheckBox 是一个检查编辑控件去展示特殊条件是否关闭或者打开.它一般会展示Yes/N ...

  2. 用MVC的辅助方法自定义了两个控件:“可编辑的下拉框控件”和“文本框日历控件”

    接触MVC也没多长时间,一开始学的时候绝得MVC结构比较清晰.后来入了门具体操作下来感觉MVC控件怎么这么少还不可以像ASP.net form那样拖拽.这样设计界面来,想我种以前没学过JS,Jquer ...

  3. Gtk 窗口,控件,设置(添加图片等)

    1.关于窗口   // 创建顶层窗体,后面有POPUP的 GtkWidget *main_window; main_window = gtk_window_new (GTK_WINDOW_TOPLEV ...

  4. 为 ItemsControl 类型的控件提供行号,mvvm模式 绑定集合

    从网络上看到的两种方式,一种是,在 codebehind 里为 控件写事件,下面是将集合绑定到 DataGrid 控件: private void DataGridSoftware_LoadingRo ...

  5. GTK经常使用控件之笔记本控件( GtkNotebook )

    笔记本控件,能够让用户标签式地切换多个界面. 当我们须要多窗体切换时,使用笔记本控件是一个明智的选择. 笔记本控件的创建: GtkWidget *gtk_notebook_new(void); 返回值 ...

  6. RichTextBox控件-主要用于输入输出编辑文本信息

    1.在RichTextBox控件中添加超链接文字 private void btn_Add_Click(object sender, EventArgs e) { rtbox_HyperLink.Ap ...

  7. devpress 的gridview 控件的行拖拽 z

    首先,添加引用:using DevExpress.XtraGrid.Views.Grid.ViewInfo;               gridControl1.AllowDrop = true; ...

  8. ASP.NET 迭代控件获得行号

    如何获取Repeater的当前行号,其实Repeater自身就带有这个获取当前行号的属性,而无需程序员绑定这个行号.到底要怎么实现呢?其实使用Repeater中的 Container.ItemInde ...

  9. C#WinForm的DataGridView控件显示行号

    public void ShowIndex(DataGridView dgv)        {                       for (int i = 0; i < dgv.Ro ...

随机推荐

  1. ORA-01075: you are currently logged on

    [root@hear01 ~]# su - oracle[oracle@hear01 ~]$ sqlplus "/as sysdba" SQL*Plus: Release 11.2 ...

  2. 【BZOJ4566_洛谷3181】[HAOI2016]找相同字符(SAM)

    自己yy的方法yyyyyyyy着就A了,写篇博客庆祝一下. 题目: 洛谷3181 分析: SAM(可能是)模板题(不会SAM的同学戳我:[知识总结]后缀自动机的构建). 对\(s1\)建出SAM,用\ ...

  3. [转]mysql视图学习总结

    转自:http://www.cnblogs.com/wangtao_20/archive/2011/02/24/1964276.html 一.使用视图的理由是什么?1.安全性.一般是这样做的:创建一个 ...

  4. EF在应用程序配置文件中找不到名为“XXX”的连接字符串。

    现象: 在配置EF的时候需要如题所述的问题,仔细检查了在EF实体模型对应程序集下的APP.Config文件中的ConnectionString配置项有了XXX项的数据库字符串的配置: <conn ...

  5. linux对比两个文件的差异

    在项目维护阶段,经常会对垃圾文件进行清理.比如没有在数据库中的文件进行删除,这个时候最好的选择就是使用shell命令了:废话不多说直接上代码: 1.首先准备好从数据表导出来的数据,方法随意 2.在服务 ...

  6. netty学习:UDP服务器与Spring整合

    最近接到一个关于写UDP服务器的任务,然后去netty官网下载了netty的jar包(netty-4.0.49.Final.tar.bz2),解压后,可以看到上面有不少example,找到其中的关于U ...

  7. jsp: ServletContext

    WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象,它代表当前web应用. ServletConfig对象中维护了ServletContext对象的引用,开发 ...

  8. [ NOIP 2008 ] TG

    \(\\\) \(\#A\) \(Word\) 给出一个长为\(N\)的小写字母串,判断出现所有字母中最多出现次数减最少出现次数得到的答案是否是质数. \(N\in [1,100]\) 直接按题意开桶 ...

  9. 在Django中使用redis:包括安装、配置、启动。

    一.安装redis: 1.下载: wget http://download.redis.io/releases/redis-3.2.8.tar.gz 2.解压 tar -zxvf redis-.tar ...

  10. 正则表达式 \D 元字符

    \D元字符可以匹配非数字字符,等价于"[^0-9]". 语法结构: (1).构造函数方式: new RegExp("\\D") (2).对象直接量方式: /\D ...