此分栏列表会从指定文本文件中读取数据显示出来
文本文件中的内容是这样
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
#include <gtk/gtk.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define MAX_LINE_SIZE 400
int main(int argc,char *argv[])
{
GtkWidget *window;
GtkWidget *clist;
GtkWidget *image;
gint i;
FILE *fp;
gchar *line;
gchar *token;
gchar *row[4];
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,500,500);
gtk_container_set_border_width(GTK_CONTAINER(window),1);
clist=gtk_clist_new(4);
gtk_clist_set_column_width(GTK_CLIST(clist),0,100);
gtk_clist_set_column_width(GTK_CLIST(clist),1,100);
gtk_clist_set_column_width(GTK_CLIST(clist),2,100);
gtk_clist_set_column_width(GTK_CLIST(clist),3,100);
gtk_clist_set_column_justification(GTK_CLIST(clist),3,GTK_JUSTIFY_CENTER);
gtk_clist_set_row_height(GTK_CLIST(clist),28);
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_set_column_title(GTK_CLIST(clist),3,"年1龄");
//gtk_clist_column_title_passive(GTK_CLIST(clist),1);/*设置编号为1的列标题为不活动的列标题*/
//image=gtk_image_new_from_file("1"); /*创建图片构件,大家可以把参数改为自己的图片文件名*/
//gtk_clist_set_column_widget(GTK_CLIST(clist),0,image);/*设置标题按钮构件*/
gtk_clist_column_titles_show(GTK_CLIST(clist));
line = (char*)malloc( MAX_LINE_SIZE * sizeof(char) );
if((fp = fopen("users.txt", "r"))==NULL)
{
printf("can not open file %s !\n", "file.txt");
exit(-1);
}
while( fgets(line, MAX_LINE_SIZE, fp) != NULL )
{
i=0;
memset(row,0,sizeof(row));
row[i] = strtok(line,":");
while((token = strtok(NULL, ":")) != NULL)
{
i++;
row[i] = token;
}
gtk_clist_append(GTK_CLIST(clist),row);
}
fclose(fp);
gtk_container_add(GTK_CONTAINER(window),clist);
gtk_widget_show(clist);
gtk_widget_show(window);
gtk_main();
}
分享到:
相关推荐
GTK+ 参考手册 for GTK+ 2.14.3,最新英文版 GTK+ is a library for creating graphical user interfaces. It works on many UNIX-like platforms, Windows, and on framebuffer devices. GTK+ is released under ...
Foundations of GTK+ Development (PDF 英文版) By Andrew Krause ISBN10: 1-59059-793-1 ISBN13: 978-1-59059-793-4 630 pages Apr 2007 (Apress) GTK+ is one of the most influential graphical toolkits for...
本书详细介绍了两种Linux图形用户界面开发技术:GTK+/GNOME。主要内容包括:GUI的基本概念,GLib,GTK+及GNOME的简介,各种GUI元素的创建与使用,bIDE,Glade等等。最后通过两个综合实例来巩固所学知识。本书实例...
基于C gtk/gtk+ sqlite3选课系统的开发
最新的基于GTK+的单词数值计算器基于linux开发,中文显示,见面优化,配带有相关文件,流程图,代码
gtk+开发工具gtk+开发工具gtk+开发工具
GTK+(GIMP Toolkit)是一套跨多种平台的图形工具包,按LGPL许可协议发布的。虽然最初是为GIMP写的,但目前已发展为一个功能强大、设计灵活的一个通用图形库。特别是被GNOME选中使得GTK+广为流传,成为Linux下开发图形...
注意: GTK+ 3.x版本跟Python2.7不兼容,如果在Python下使用GTK,需要安装2.x版的gtk+ (在windows上如此)
gtk+-bundle_2.18.7-20100213_win32 gtk+-bundle_2.18.7-20100213_win32
GTK+程序设计中文版 .pdf
gtk+-2.24.0.tar.bz2 GTK+源代码 自己需要的
压缩包包含gtk+-bundle_2.24.10-20120208_win32文件和gtk+ Visual Studio 2008环境搭建文档说明
GTK+是一个跨平台开源GUI图形界面库,本资源是用在Windows上面的版本
英文名称:The GTK+ tutorial 本GTK+程序初级教程采用了“引导”式的方法来教你如何使用GTK+。本教程所用的编程语言为C语言。并且整个教程中方法已经在Linux中测试通过。本教程适用GTK+的初级兼代中级水平的程序员...
GTK+2.0编程范例-书籍和书中代码.tar.gz GTK+2.0编程范例 书本比较清晰 加上有代码 GTK入门和提高必备
GTK+虽然是Linux下的开发工具包,但是因为其跨平台特性,我们可能需要在Windows 环境下进行程序开发。所以如何在Windows下配置GTK+的开发环境,是许多Gtk学习者的实际需求。 本文在下文基础上增加了GTK+3.0模板修改...
关于图形库GTK+2.0的一本教材,例子丰富……对刚刚入门的人应该有用
GTK+3.0例子代码(python代码)
gtk+-2.6.6.tar.bz2