gtk学习笔记02 使用glade画一个简单的界面
-
用代码画界面很累,用图形化工具画界面很爽
-
什么是
glade
,是一个可以拖拽出一个界面的工具- 下载
glade
- 旧版本链接在这
http://60.179.35.214:2811/e/file/download?code=4a4e3f7e24081336&id=47396
- windows新版本
glade3-8-5
的下载链接http://ftp.acc.umu.se/pub/GNOME/binaries/win32/glade/3.8/
失效了就去这里翻翻看https://mail.gnome.org/archives/glade-devel-list/2013-September/msg00002.html
- 旧版本链接在这
- 无脑下一步即可
- 完成后打开,主界面如下图(我勾选了2.8)
- 下载
-
使用
glade
拖拽一个简单的界面- 先拖一个
window
出来,修改name
为window_main
,修改标题hello_main
,可选默认宽高,
- 给窗口添加事件
- 再添加一个
label
控件
ctrl+s
保存为文件02windows_miain.glade
- 先拖一个
-
然后编写
main.cpp
,步骤和gtk学习笔记01 helloworld
是一样的,只不过代码不同- main.cpp
#include <gtk/gtk.h> #include <string.h> void on_window_main_destroy() { gtk_main_quit(); } int main(int argc, char **argv) { GtkBuilder *builder; GtkWidget *window; gtk_init(&argc, &argv); builder = gtk_builder_new(); char* filePath = "glades/02window_main.glade"; gtk_builder_add_from_file(builder, filePath, NULL); window = GTK_WIDGET(gtk_builder_get_object(builder, "window_main")); gtk_builder_connect_signals(builder, NULL); g_signal_connect(window, "delete_event", on_window_main_destroy, NULL); g_object_unref(builder); gtk_main(); return 0; }
- main.cpp
-
运行发现没有窗口弹出,可能是版本原因,于是要修改ui文件
02windows_miain.glade
- 打开ui文件(本质是xml文件)
添加如下图的代码,并注释掉字体大小设置的代码<!-- 无法显示窗口的问题,请加上下面这句 --> <property name="visible">True</property>
- 使用新版本的
glade3-8-5
窗口记得选择显示,字体也可以正常放大了
- 打开ui文件(本质是xml文件)
-
再次编译运行得到