我是靠谱客的博主 酷炫方盒,最近开发中收集的这篇文章主要介绍linux ctg重装,Linux 下从头再走 GTK+-3.0 (五),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

实践中表明,纯粹利用 gtk 函数来创建 UI 是很繁琐的事,需要编写很多代码。怎样才能快速统一的建立 UI 布局呢?

可喜的是 GTK 提供了一个 GtkBuilder 用于快速创建界面。它读取一个 xml 文件。按照 xml 文件中所描述的来创建界面。因此我们需要编写 xml 文件。

创建example.ui ,内容如下:

True

GtkBuilder

30

True

True

Button 1

0

0

True

Button 2

1

0

True

0

1

2

再创建源文件 example.c  ,内容如下:

#include

static void print_hello(GtkWidget *button , gpointer data);

static void activate(GtkApplication *app , gpointer data);

static void print_entry(GtkWidget * button , gpointer entry);

int main(int argc , char **argv)

{

GtkApplication *app;

int app_status;

app = gtk_application_new("org.rain.example" , G_APPLICATION_FLAGS_NONE);

g_signal_connect(app , "activate" , G_CALLBACK(activate) , NULL);

app_status = g_application_run(G_APPLICATION(app) , argc , argv);

g_object_unref(app);

return app_status;

}

static void print_hello(GtkWidget *button , gpointer data)

{

printf("Hello,world!n");

}

static void print_entry(GtkWidget * button , gpointer entry)

{

const gchar *entry_buf;

//获取输入框的内容,返回一个 const gchar 指针 , gchar 即是 char

entry_buf = gtk_entry_get_text( GTK_ENTRY(entry) );

if('' != entry_buf[])

printf("%sn" , entry_buf);

}

static void activate(GtkApplication *app , gpointer data)

{

GtkBuilder *builder;

GObject *window;

GObject *button;

GObject *entry;

//创建一个 GtkBuilder 。

builder = gtk_builder_new();

//将描述 UI 的文件添加到 Builder 中。

gtk_builder_add_from_file(builder , "example.ui" , NULL);

//可以用该函数获取 Builder 创建的对象,根据 example.ui 文件中设置的 object 的 id 来获取。

window = gtk_builder_get_object(builder , "window");

gtk_application_add_window(app , GTK_WINDOW(window));

//注意该函数返回的是一个指向 GObject 对象的指针。

button = gtk_builder_get_object(builder , "print_hello");

//设置按钮标签

gtk_button_set_label ( GTK_BUTTON (button) , "PrintHello");

g_signal_connect(button , "clicked" , G_CALLBACK(print_hello) , NULL);

//获取输入框对象。

entry = gtk_builder_get_object(builder , "entry");

button = gtk_builder_get_object(builder , "print_entry");

gtk_button_set_label ( GTK_BUTTON (button) , "PrintEntry");

//调用 print_entry 时传递用户参数 entry 。

g_signal_connect(button , "clicked" , G_CALLBACK(print_entry) , entry);

}

编译,运行:

gcc example.c `pkg-config --cflags --libs gtk+-3.0`

./a.out

运行结果如下:

aaarticlea/png;base64,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" alt="" />

Linux 下从头再走 GTK+-3.0 (一)

原本由于项目需求在 Linux 下学习过一段时间的 GTK+2.0 图形开发,时隔一段时间,想真正深入学习一下 GTK . 这次直接从头学习 GTK+-3.0 ,并写下博文便于日后查看,也方便新手入门 ...

Linux 下从头再走 GTK+-3.0 (三)

之前我们为窗口添加了一个按钮,接下来让这个按钮丰富一点.并给窗口加上图标. 首先创建 example3,c 的源文件. #include static void a ...

Linux 下从头再走 GTK+-3.0 (六)

在 GTK3 中增加了一个 GtkApplicaton 类,便于我们处理多窗口程序,同时有了 GtkApplication 我们也更容易创建灵活,易用,界面美观的应用程序. 在前面的几个例子中,演示了 ...

Linux 下从头再走 GTK+-3.0 (四)

实际的应用中,往往有很多个控件, 同样GTK提供了很多种布局方案,Box, Fixed , Table , Grid 等. 接下来试试网格布局 Grid. 我们创建 example4.c ,内容如下: ...

Linux 下从头再走 GTK+-3.0 (二)

仅仅创建一个空白窗口是不够的,下面我们为创建的窗口添加一个按钮. 以 Hello,World!为例. 首先创建一个源文件:example2.c 内容如下. #include

Linux下安装二进制版mysql-8.0.15

1.添加用户## 添加用户组groupadd mysql## 添加用户,指定用户home目录useradd -g mysql mysql -d /data/mysql## 解压下载的mysql二进制包 ...

linux下安装mysql5.7(centos6.0)

注:因为网络原因,这个mysql安装是我以前在学校的时候找到的一个安装包,不过也找到了下载的地址:http://www.itmop.com/downinfo/143061.html下载完成后,把文件上 ...

linux下如何编译安装gcc-8.3.0

1. 获取源码 wget https://mirrors.ustc.edu.cn/gnu/gcc/gcc-8.3.0/gcc-8.3.0.tar.xz -P ~ tar xvf gcc-8.3.0.t ...

linux下使用yum安装新版php7.0

这两天又装了一下虚拟机,又要编译lnmp,还要弄各种拓展,很麻烦,能不能直接yum安装呢?答案是可以的! 1.首先要更新yum源,不然是默认的老版本,一般都在5.6及以下,但是php7都出来好久了,性 ...

随机推荐

MVVM模式和在WPF中的实现(二)数据绑定

MVVM模式解析和在WPF中的实现(二) 数据绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中 ...

[windows驱动]内核态驱动架构

1.windows驱动简介: 1.1 windows组件简介: 1.2 windows驱动类型: windows驱动分为两种基本类型: 用户态驱动在用户态下执行.它们一般提供一套win32应用程序和内 ...

centos防火墙设置

1.查看 service iptables status 2.开关 service iptables start/stop 3.开机启动 chkconfig iptables on/off 4.编辑端 ...

MySQL启动和关闭服务命令

MySQL启动和关闭服务命令 1.启动服务命令 net start mysql 2.关闭服务命令 net stop mysql

java启动监听错误: org.springframework.web.context.ContextLoaderListener

项目启动会报以下错误: 解决方案如下: 感谢好心人的提示“其实可能是你的jar文件没有同步发布到自己项目的lib目录中(如果你是用Maven进行构建的话) 可以试试 下面的办法 项目点击右键 点击 P ...

iOS 关于文件的操作

最近做东西,遇到了使用文件方面的问题,花了点时间把文件研究了一下! 一  关于文件路径的生成 我用的方法是: -(NSString*)dataFilePath { NSArray * paths = ...

Educational Codeforces Round 5

616A - Comparing Two Long Integers    20171121 直接暴力莽就好了...没什么好说的 #include #include&l ...

给 MSYS2 添加中科大的源

最近一段时间不知怎么的,使用默认的 MSYS2 源升级软件或是安装新软件的特别的慢.所以就翻了翻国内的几个开源软件的镜像库,发现中科大的库里就有 MSYS2.所以就研究了一下,给 MSYS2 添加了中 ...

Hadoop 2.7.3 完全分布式维护-部署篇

测试环境如下  IP       host JDK linux hadop role 172.16.101.55 sht-sgmhadoopnn-01 1.8.0_111 CentOS release ...

MySQL中的存储过程和函数使用详解

一.对待存储过程和函数的态度 在实际项目中应该尽量少用存储过程和函数,理由如下: 1.移植性差,在MySQL中的存储过程移植到sqlsever上就不一定可以用了. 2.调试麻烦,在db中报一个错误和在 ...

最后

以上就是酷炫方盒为你收集整理的linux ctg重装,Linux 下从头再走 GTK+-3.0 (五)的全部内容,希望文章能够帮你解决linux ctg重装,Linux 下从头再走 GTK+-3.0 (五)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部