打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
GTK:分栏列表信号
与其他构件一样,GtkCList有一些信号供我们使用。GtkCList构件是从容器构件GtkContainer派生的,它有容器所具有的一些信号,还有下面这些附加信号:
select_row:选中一行时引发,该信号传递以下信息,依次是GtkCList *clist、gint row、
gint column、GtkEventButton *event、gpointer data。该信号的回调函数形势如下:
void select_row_callback(GtkWidget *widget,gint row,gint column,GtkEventButton *event,gpointer data);
unselect_row:用户对一行取消选择,引发这个信号。传递的信息与上一个信号一样。
click_column:选中某一列时引发。传递以下信息: GtkCList *clist、gint column、gpointer data。
下面是程序例子:
#include <gtk/gtk.h>
void select_row_callback(GtkWidget *clist,gint row,gint column,GdkEventButton *event,gpointer data);
int main(int argc,char *argv[ ])
{
GtkWidget *window;
GtkWidget *clist;
gchar *text1[3]={“刘备”,”男”,”23”}; /*定义列表项数据*/
gchar *text2[3]={“关羽”,”男”,”22”};
gtk_init(&argc,&argv);
window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_signal_connect(GTK_OBJECT(window),”delete_event”,GTK_SIGNAL_FUNC(gtk_main_quit),NULL);
gtk_widget_set_size_request(window,200,150);
gtk_container_set_border_width(GTK_CONTAINER(window),10);
clist=gtk_clist_new(3);
gtk_clist_set_column_title(GTK_CLIST(clist),0,”姓名”);
gtk_clist_set_column_title(GTK_CLIST(clist),1,”姓别”);
gtk_clist_set_column_title(GTK_CLIST(clist),2,”年龄”);
gtk_clist_prepend(GTK_CLIST(clist),text1);/*将列表项数据添加到列表*/
gtk_clist_prepend(GTK_CLIST(clist),text2);
gtk_signal_connect(GTK_OBJECT(clist),”select_row”,GTK_SIGNAL_FUNC(select_row_callback),NULL);/*捕捉select_row信号*/
gtk_clist_column_titles_show(GTK_CLIST(clist));
gtk_container_add(GTK_CONTAINER(window),clist);
gtk_widget_show(clist);
gtk_widget_show(window);
gtk_main();
}
void select_row_callback(GtkWidget *clist,gint row,gint column,GdkEventButton *event,gpointer data)/*设置select_row信号的回调函数*/
{
gchar *text=NULL;
gtk_clist_get_text(GTK_CLIST(clist),row,column,&text);
gprint(“%s/n”,text);
}
程序运行后当用户点击单元格,屏幕就打印相应的内容。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
GTK学习[一]:GTK中的信号(Signal)与事件
【转】Gtk学习笔记(一)
gtk+ 编程实例 简易的文件浏览器
Adding custom Javascript object to WebKIT
用Glade和libGlade设计Gtk+图形界面
g_signal_connect 与 g_signal_connect_swapped
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服