这是在windows下用gtk+glade+codeblocks设计的一个简单的文本编辑器.
功能:在文本视图内编辑文本后,在右下角写入文件名按回车键可以保存在桌面上,具有文件夹选择功能、统计文本的字符数和行数。没事时可以编者玩玩。也是和初学者。
准备:
gtk2.24、glade3.8.5、codeblocks12.11不会安装配置的看我的另一篇博客。
1、先是简单的glade界面设计:这个是最终效果
设计的步骤大概是这样的,不要先想着去设计一个大的功能复杂的编辑器,先从简单的功能着手,比方实现退出功能,你点击“退出键”就关闭窗口(要用到的事件是”destory“和gtk_main_quit)、统计一下文本的行数(先是利用textbuffer,有个函数是gtk_text_buffer_get_line_coun从名字你就知道了)等等。功能一个个添加,最后就是一个能能强大的编辑器。这算是个建议。
首先是退出功能的实现:
#include <stdlib.h>
#include <gtk/gtk.h>
int main (int argc, char *argv[])
{
GtkWidget *win;
GtkBuilder *builder;
/*这些是固定格式*/
gtk_init (&argc, &argv);
builder = gtk_builder_new ();
gtk_builder_add_from_file (builder, "test.glade", NULL);
gtk_builder_connect_signals (builder, NULL);
/*从test.glade文件中获得window1,注意其他的组建也可以按这个格式获得*/
win = GTK_WIDGET (gtk_builder_get_object (builder, "window1"));
g_object_unref (G_OBJECT (builder));
gtk_widget_show (win);
gtk_main ();
return 0;
}
这里注意一下glade的设计:
现在你就可以点击”退出“键,实现退出功能了。
我随便给大家一些资料,这方面的书籍比较少,比较零散,我收集了一些,自己一直在用:
1、首先就是:glade3官网的手册,是最全的,但是英文的,你可以用有道网页翻译就可以了,也有中文的但是很老了,不全。
2、gtk的api,用过java和c的都知道该怎么用,我这有gtk2的api。
3、这个人的博客是翻译了foundations+of+gtk++development这本书很好的,有英文版的。
4、就是gtk+中文论坛了,资料很丰富。
5、还有一本是《linux环境c程序设计》,清华大学出版社,徐诚、高颖婷编写。其中有5个章节讲的gtk+glade的,可以看一下这几个章节。网上有电子版的。