此分栏列表会从指定文本文件中读取数据显示出来
文本文件中的内容是这样
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
张三:男人:哈哈:哈哈
#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+ 2.0 中文手册,开发者不仅可以学习到 GTK+ 的核心概念和技术,还能掌握开发 GUI 应用的基本流程和最佳实践,为实现高效、美观的图形界面打下坚实的基础。尽管 GTK+ 已经更新到更高版本,但 GTK+ ...
* GDK:一种函数库,她为整个 GTK+ 图形库系统提供了一些底层的“图形实现”和“窗口实现”的方法。在 Linux 中 GDK 是位于 X 服务器和 GTK+ 函数库之间的。 * GdkPixbuf:一种函数库工具包用于加载图像和维护图像...
Gtk+ 3.6.4 是一个用于开发图形用户界面(GUI)的开源工具包,主要面向Linux和其他类UNIX系统,但也有针对Windows平台的版本。这个“Gtk+ 3.6.4 win64.zip”文件是一个包含了Gtk+ 3.6.4在64位Windows操作系统上的SDK...
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 ...
1. **跨平台**:GTK+不仅支持Linux和其他类Unix系统,如FreeBSD和Mac OS X,还支持Windows,实现了多平台兼容性。 2. **对象导向**:GTK+基于C语言设计,但通过面向对象的设计原则,提供了类和对象的概念,使得开发...
Linux系统中的GTK+ 2.0是一个用于创建图形用户界面(GUI)的开源库,它在许多基于Linux的桌面环境中广泛使用,如GNOME。GTK+(GIMP Toolkit)最初是为了GIMP图像编辑器开发的,但随着时间的发展,它已经成为了一个...
5. **src**:可能包含了GTK+ 2.22.1的源代码,允许开发者查看和学习GTK+的内部实现。 6. **lib**:包含了GTK+的库文件,这些文件在编译链接时被加入到应用程序中,使得程序能够调用GTK+的功能。 7. **manifest**:...
在这个选课系统中,我们将使用GTK+来设计和构建用户界面,如菜单、按钮、文本框和列表视图,以便学生和教师进行交互。 SQLite3是一个轻量级、嵌入式的数据库管理系统,它不需要单独的服务器进程,并且可以直接在...
GTK+3.0是GIMP Toolkit的最新版本,是一个跨平台的GUI库,广泛用于创建图形用户界面。它支持多种操作系统,包括Linux、Windows和macOS。GTK+3.0的详细说明文档提供了全面的学习资源,帮助开发者充分利用其功能。 在...
GTK+(GIMP Toolkit Plus)是一个跨平台的图形用户界面(GUI)工具包,广泛用于创建桌面应用程序。这个“gtk+-bundle_2.18.7-20100213_win32”是一个面向Windows操作系统的GTK+ 2.18.7版本的打包文件,发布于2010年2...
通过阅读和分析这些代码,初学者可以深入理解GTK+如何与程序逻辑结合,以及如何实现用户界面的动态交互。此外,这也为有经验的开发者提供了一个很好的起点,他们可以根据自己的需求对计算器进行扩展或定制。 为了...
GTK+,全称为GIMP Toolkit,是一个开源的GUI(图形用户界面)工具包,用于创建跨平台的应用程序。它最初是为图像处理软件GIMP(GNU Image Manipulation Program)开发的,但后来发展成为了一个广泛使用的多语言编程...
标题中的“gtk+ Visual Studio 2008环境搭建”是指在Windows操作系统上,使用Microsoft Visual Studio 2008开发环境配置GTK+库的过程。GTK+(GIMP Toolkit)是一个跨平台的图形用户界面(GUI)工具包,广泛用于创建...
本书详细介绍了两种Linux图形用户界面开发技术:GTK+/GNOME。主要内容包括:GUI的基本概念,GLib,GTK+及GNOME的简介,各种GUI元素的创建与使用,bIDE,Glade等等。最后通过两个综合实例来巩固所学知识。本书实例...
- **邮件列表与论坛**:加入GTK+社区,与其他开发者交流经验和问题解决方法。 #### 八、结语 GTK+作为一个成熟稳定的GUI工具包,在开发高效、美观的跨平台应用程序方面具有明显优势。通过掌握本教程介绍的基础知识...
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...
GTK+(GIMP Toolkit)是跨平台的图形用户界面(GUI)工具包,广泛用于开发桌面应用程序。这个特定的资源,“gtk+-bundle_3.10.4-20131202_win64”,是一个专为Windows 64位系统设计的GTK+版本的打包下载,版本号为...
1. **跨平台**:GTK+可以在多种操作系统上运行,通过使用Pango库处理文本和字体,可以实现跨平台的本地化。 2. **主题引擎**:GTK+允许用户自定义界面主题,通过更换皮肤来改变应用的外观。 3. **对象导向**:GTK+...
GTK+修复工具32位.zip是一个专为32位计算机设计的软件包,它包含了用于修复或安装GTK+环境的必要组件。GTK+(GIMP Toolkit)是一个跨平台的图形用户界面工具包,广泛用于创建GUI应用程序。这个压缩包特别为在32位...