GTK常用控件之行编辑( GtkEntry )

行编辑,只允许输入一行内容的控件,如密码输入框。

行编辑的创建:

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不允许编辑

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

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

转自:

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-26 19:13:21

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

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 gch

GTK常用控件之图片控件( GtkImage )

图片控件和标签的作用很类似,都是作为显示用的,只是图片控件显示的内容是图片. 图片控件的创建: GtkWidget *gtk_image_new_from_file( const gchar *filename ); filename:图片的名字,带路径的话需要加上路径( 相对或绝对 ) 返回值:图片控件指针 通过上面方法创建的图片控件,以图片默认大小来显示,不能修改其大小.如果要改变图片的大小,我们要借助图片资源对象GdkPixbuf,需要注意的是,GdkPixbuf不属于控件类,它以 Gdk

GTK常用控件之笔记本控件( GtkNotebook )

笔记本控件,可以让用户标签式地切换多个界面.当我们需要多窗口切换时,使用笔记本控件是一个明智的选择. 笔记本控件的创建: GtkWidget *gtk_notebook_new(void); 返回值:笔记本控件指针 设置页标签的位置: void gtk_notebook_set_tab_pos( GtkNotebook *notebook, GtkPositionType pos ); notebook:笔记本控件 pos取值如下: GTK_POS_LEFT:   左 GTK_POS_RIGHT

GTK常用控件之窗口( GtkWindow )

窗口的创建: GtkWidget *gtk_window_new(GtkWindowType type); GtkWindowType是一个枚举,有两种情况: GTK_WINDOW_TOPLEVEL:顶层窗口,有边框 GTK_WINDOW_POPUP:   弹式窗口,没边框 返回值:窗口指针 标题的设置: void gtk_window_set_title( GtkWindow *window, const gchar *title); window:窗口 title:标题 控件最小大小的设置:

GTK常用控件之按钮( GtkButton )

按钮在GUI里应用最为广泛,我们几乎能在所有的界面中看到按钮. 空按钮的创建(按钮上没有任何内容): GtkWidget *gtk_button_new(void); 返回值:按钮指针 创建带文本内容的按钮: GtkWidget *gtk_button_new_with_label (const gchar *label); label:文本内容 返回值:按钮指针 设置按钮的文本内容: void gtk_button_set_label(GtkButton *button, const gcha

GTK常用控件之进度条( GtkProgressBar )

我们到处都能看到进度条的应用,我们下载拷贝个文件,下载个电影等总能看到进度条的影子,如图: 进度条的常用操作无非设置其比例或者获取其比例. 进度条的创建: GtkWidget *gtk_progress_bar_new(void); 返回值:进度条指针 设置进度条显示的进度比例: void gtk_progress_bar_set_fraction( GtkProgressBar *pbar, gdouble fraction); pbar:需要操作的进度条 fraction:0.0到1.0 获

GUI创建各常用控件(二)

继续接着上一篇! 在我看来有一点需要申明:由于是GUI的相关知识,所以我只是在复习中粗略的总结而已,因此参考价值可能有限,更多的是当作自己学习的一个记录以及便于自己查阅. 好啦!干货继续: 1.类似于GUI.Box(new Rect(Screen.width/2,Screen.height/2,Screen.width/2,Screen.height/2),   new GUIContent("This is a title","hahaha"));的命令:   其

C# 常用控件及单击事件

1.窗体 1.常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体. (2)WindowState属性: 用来获取或设置窗体的窗口状态. 取值有三种: Normal (窗体正常显示). Minimized(窗体以最小化形式显示)和 Maximized(窗体以最大化形式显示). (3)StartPosition属性:用来获取或设置运行时窗体的起始位置.(System.Windows.Forms.SystemInformation.WindowsArea.

MFC之常用控件(四)

常用控件主要包括:静态文本框.编辑框.单选按钮.复选框.分组框.列表框.组合框.图片控件.列表控件.树形控件和进度条控件等等.本节教程先来讲解静态文本框的使用. 控件的通知消息 在将静态文本框的使用之前,先大概讲讲控件的通知消息. 当控件有事件发生时,它会向父窗口发送通知消息.最常发生的事件就是鼠标单击了,此时控件会向父窗口发送BN_CLICKED消息,实际上也就是给父窗口发送WM_COMMAND消息,在wParam参数中包含有通知消息码(鼠标单击时的通知消息码就是BN_CLICKED)和控件I