GTK经常使用控件之行编辑( GtkEntry )
行编辑,仅仅同意输入一行内容的控件。如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 )的更多相关文章
- DevExpress2011控件教程)编辑控件(comboBox,AspxCheckBox) 范例1
DevExpress2011控件教程)编辑控件(comboBox,AspxCheckBox) 范例1 AspxCheckBox 是一个检查编辑控件去展示特殊条件是否关闭或者打开.它一般会展示Yes/N ...
- 用MVC的辅助方法自定义了两个控件:“可编辑的下拉框控件”和“文本框日历控件”
接触MVC也没多长时间,一开始学的时候绝得MVC结构比较清晰.后来入了门具体操作下来感觉MVC控件怎么这么少还不可以像ASP.net form那样拖拽.这样设计界面来,想我种以前没学过JS,Jquer ...
- Gtk 窗口,控件,设置(添加图片等)
1.关于窗口 // 创建顶层窗体,后面有POPUP的 GtkWidget *main_window; main_window = gtk_window_new (GTK_WINDOW_TOPLEV ...
- 为 ItemsControl 类型的控件提供行号,mvvm模式 绑定集合
从网络上看到的两种方式,一种是,在 codebehind 里为 控件写事件,下面是将集合绑定到 DataGrid 控件: private void DataGridSoftware_LoadingRo ...
- GTK经常使用控件之笔记本控件( GtkNotebook )
笔记本控件,能够让用户标签式地切换多个界面. 当我们须要多窗体切换时,使用笔记本控件是一个明智的选择. 笔记本控件的创建: GtkWidget *gtk_notebook_new(void); 返回值 ...
- RichTextBox控件-主要用于输入输出编辑文本信息
1.在RichTextBox控件中添加超链接文字 private void btn_Add_Click(object sender, EventArgs e) { rtbox_HyperLink.Ap ...
- devpress 的gridview 控件的行拖拽 z
首先,添加引用:using DevExpress.XtraGrid.Views.Grid.ViewInfo; gridControl1.AllowDrop = true; ...
- ASP.NET 迭代控件获得行号
如何获取Repeater的当前行号,其实Repeater自身就带有这个获取当前行号的属性,而无需程序员绑定这个行号.到底要怎么实现呢?其实使用Repeater中的 Container.ItemInde ...
- C#WinForm的DataGridView控件显示行号
public void ShowIndex(DataGridView dgv) { for (int i = 0; i < dgv.Ro ...
随机推荐
- PHP富文本编辑器 之Kindeditor的使用 一
一.下载编辑器源码 KindEditor 4.1.10 (2013-11-23) [1143KB] 下载页面: http://kindeditor.net/down.php 二.部署编辑器 将下载文件 ...
- Java系列学习(五)-流程控制语句
1.顺序结构 1.if语句 (1)图例 (2)三种格式 A:格式1 B:格式2 C:格式3 2.swich语句 图例: 格式: [注]input可以是byte,short,int,char:JDK5以 ...
- [ NOIP 2002 ] TG
\(\\\) \(\#A\) 均分纸牌 有\(N\)堆纸牌,每堆有若干张,但纸牌总数必为\(N\)的倍数.可以在任一堆上取若干张纸牌,然后移动给其左右任意一侧的纸牌堆,求将所有的牌堆牌数都变为平均值最 ...
- Android popwindow 消失监听
LisviewPop.setOnDismissListener(new OnDismissListener() { @Override public void onDismiss() { //改变显示 ...
- mysql外键创建失败原因
引用:http://blog.csdn.net/wangpeng047/article/details/19624351 首先,如果和外键相关的几张表中已经插入了数据,可能导致外键插入的失败 在MyS ...
- VHDL之Serial-Parallel Multiplier
1 Serial-parallel multiplier Figure 12.1 shows the RTL diagram of a serial-parallel multiplier. One ...
- CNN结构:图片风格分类效果已成(StyleAI)
CNN结构:图片风格分类效果已成.可以在色彩空间对图片风格进行分类,并进行目标分类. StyleAI构架:FasterRCnn + RandomTrees 为何不使用MaskRCNN? MaskRCN ...
- .mm c++ oc 混编
When you create a static library you don't link in the dependent libraries. As a result, when you re ...
- IOS7 APP 升级的10个TIP 建议
There is no way to preserve the iOS 6 style status bar layout. The status bar will always overlap yo ...
- Appium 使用android_uiautomator定位元素时报错: The requested resource could not be found, or a request was received using an HTTP method that is not supported by the mapped resource
使用 android_uiautomator 定位元素时(现在用的还不太熟,对于这个方法还需要加深了解)报错: 报错信息:The requested resource could not be fou ...