1) Linux环境搭建
在线安装即可,安装命令如下:
测试是否安装成功,在终端敲 glade 即可:
2)windows版本环境搭建
下载一个windows版本,点击此处即可。
双击后一直“下一步”安装即可。
需要注意的是,如果是windows版本的glade设...
分类:
其他好文 时间:
2015-07-27 16:30:00
阅读次数:
118
搭建好环境后,在终端敲 glade 即可启动glade工具。
glade的整体框图:
常用控件选择区:列举了常用的控件,常用的有三类:顶层(主窗口等),容器(各种布局容器等),控制和显示(按钮、便签、图片控件等)
当鼠标放在控件时,会自动显示控件的中文文字,同时,还能人为设置,如下图:
界面编辑区:把控件拖放在这进...
分类:
其他好文 时间:
2015-07-27 16:28:45
阅读次数:
354
前面我们学习的GTK界面都是静态的,我们按下按钮它是没有响应的,如何让它有响应呢?接下来我们一起学习GTK的信号与回调函数。
GTK采用了信号与回调函数来处理窗口外部传来的事件、消息或信号。当信号发生时,程序自动调用为信号连接的回调函数。
学习应用编程,我们会经常接触到“信号”这个名词。GTK中的“信号”实际上是一种软件中断。“中断”在我们生活中经常遇到,譬...
分类:
其他好文 时间:
2015-07-27 13:15:10
阅读次数:
161
接下来,我们做一个布局练习,如下图:
我们用表格布局实现,表格布局参考坐标如下:
这里我们用到行编辑控件( GtkEntry )。
行编辑的创建:
GtkWidget * gtk_entry_new(void);
返回值:行编辑指针行
编辑内容的设置:
void gtk_entry_set_t...
分类:
其他好文 时间:
2015-07-26 20:57:14
阅读次数:
351
学习水平和垂直布局容器后,我们几乎能布出任何风格的布局,只需要嵌套使用水平布局容器和垂直布局容器即可。假如我们要完成下图的布局,我们该怎么做呢?
1)创建一个垂直布局容器( A )
2)创建一个水平布局容器( B ),一个close按钮( C )
3)将水平布局容器和close按钮添加到垂直布局容器里( 将 B 和 C 添加到 A )
4)创建button 1按...
分类:
其他好文 时间:
2015-07-26 14:19:49
阅读次数:
123
前面我们学习的水平、垂直和表格布局容器,控件会跟着容器大小的变化进行自动适应,而固定布局容器里的控件则不会跟着变化( 则固定不变 )。
固定布局的创建:
GtkWidget *gtk_fixed_new(void);
返回值:固定布局容器指针
固定布局容器添加控件:
void gtk_fixed_put(
GtkFixed *fixed,
...
分类:
其他好文 时间:
2015-07-26 14:16:37
阅读次数:
130
垂直布局和水平布局的用法基本是一样,无非是新建垂直布局容器接口,还有控件摆放的方向不同。
垂直布局容器的创建:
GtkWidget *gtk_vbox_new( gboolean homogeneous,
gint spacing );
完整代码如下:
#include
i...
分类:
其他好文 时间:
2015-07-25 12:27:52
阅读次数:
141
如果我们希望窗口里多放添加几个控件,直接添加是不成功的,因为窗口只能容纳一个控件的容器。这时候,我们需要借助布局容器,我们先把布局容器添加到窗口里,然后再把所需要添加的控件放在布局容器里。
布局容器的主要分类:水平布局( GtkHBox)、垂直布局(GtkVBox )、表格布局(GtkTable)、固定布局(GtkFixed )。
水平布局容器:
...
分类:
其他好文 时间:
2015-07-25 12:27:32
阅读次数:
135
笔记本控件,可以让用户标签式地切换多个界面。当我们需要多窗口切换时,使用笔记本控件是一个明智的选择。
笔记本控件的创建:
GtkWidget *gtk_notebook_new(void);
返回值:笔记本控件指针
设置页标签的位置:
void gtk_notebook_set_tab_pos(GtkNotebook *notebook,...
分类:
其他好文 时间:
2015-01-26 17:11:32
阅读次数:
471
窗口的创建:
GtkWidget *gtk_window_new(GtkWindowType type);
GtkWindowType是一个枚举,有两种情况:
GTK_WINDOW_TOPLEVEL:顶层窗口,有边框
GTK_WINDOW_POPUP: 弹式窗口,没边框
返回值:窗口指针
标题的设置:
void gtk_window_set_title(...