界面构件开发之RC文件

代码;

#include <gtk-2.0/gtk/gtk.h>
#include <gtk-2.0/gdk/gdkkeysyms.h>
#include <glib-2.0/glib.h>
#include <stdio.h>

int main(int argc, char *argv[]) {
	gtk_init(&argc, &argv);
	gtk_rc_parse("./mainrc");
	GtkWidget *winNewplan;
	winNewplan = gtk_window_new(GTK_WINDOW_TOPLEVEL);
	gtk_window_set_title(GTK_WINDOW(winNewplan), "RC文件演示");
	gtk_widget_set_name(GTK_WIDGET(winNewplan),"modelwindow");
	gtk_widget_show(winNewplan);
	g_signal_connect(G_OBJECT(winNewplan), "delete_event",
			G_CALLBACK(gtk_main_quit), NULL);

	GtkWidget *vbMain;
	GtkWidget *hbTitle;
	GtkWidget *lbTitle;
	GtkWidget *enTitle;
	GtkWidget *btTitlemodel;
	GtkWidget *hbInure;
	GtkWidget *lbInure;
	GtkWidget *enInure;
	GtkWidget *btInure;
	GtkWidget *hbOutof;
	GtkWidget *lbOutof;
	GtkWidget *enOutof;
	GtkWidget *btOutof;
	GtkWidget *hbPriority;
	GtkWidget *lbPri;
	GtkWidget *rdExigence;
	GSList *rdExigence_group = NULL;
	GtkWidget *rdNormal;
	GtkWidget *rdRandom;
	GtkWidget *hbbPlan;
	GtkWidget *btCancel;
	GtkWidget *btOK;

	vbMain = gtk_vbox_new(FALSE, 0);
	gtk_widget_show(vbMain);
	gtk_container_add(GTK_CONTAINER(winNewplan), vbMain);

	hbTitle = gtk_hbox_new(FALSE, 0);
	gtk_widget_show(hbTitle);
	gtk_box_pack_start(GTK_BOX(vbMain), hbTitle, TRUE, TRUE, 0);

	lbTitle = gtk_label_new("Title");
	gtk_widget_show(lbTitle);
	gtk_box_pack_start(GTK_BOX(hbTitle), lbTitle, FALSE, FALSE, 0);
	gtk_widget_set_size_request(lbTitle, 200, 80);
	gtk_widget_set_name(GTK_WIDGET(lbTitle), "first");

	enTitle = gtk_entry_new();
	gtk_widget_show(enTitle);
	gtk_box_pack_start(GTK_BOX(hbTitle), enTitle, TRUE, TRUE, 0);
	gtk_entry_set_max_length(GTK_ENTRY(enTitle), 50);

	btTitlemodel = gtk_button_new_with_mnemonic("Create Plan by Model");
	gtk_widget_show(btTitlemodel);
	gtk_box_pack_start(GTK_BOX(hbTitle), btTitlemodel, FALSE, FALSE, 0);

	hbInure = gtk_hbox_new(FALSE, 0);
	gtk_widget_show(hbInure);
	gtk_box_pack_start(GTK_BOX(vbMain), hbInure, TRUE, TRUE, 0);

	lbInure = gtk_label_new("Inure Time");
	gtk_widget_show(lbInure);
	gtk_box_pack_start(GTK_BOX(hbInure), lbInure, FALSE, FALSE, 0);
	gtk_widget_set_size_request(lbInure, 200, 80);

	enInure = gtk_entry_new();
	gtk_widget_show(enInure);
	gtk_box_pack_start(GTK_BOX(hbInure), enInure, TRUE, TRUE, 0);
	gtk_editable_set_editable(GTK_EDITABLE(enInure), FALSE);

	btInure = gtk_button_new_from_stock("gtk-edit");
	gtk_widget_show(btInure);
	gtk_box_pack_start(GTK_BOX(hbInure), btInure, FALSE, FALSE, 0);
	GTK_WIDGET_SET_FLAGS(btInure, GTK_CAN_DEFAULT);

	hbOutof = gtk_hbox_new(FALSE, 0);
	gtk_widget_show(hbOutof);
	gtk_box_pack_start(GTK_BOX(vbMain), hbOutof, TRUE, TRUE, 0);

	lbOutof = gtk_label_new("Out Of Time");
	gtk_widget_show(lbOutof);
	gtk_box_pack_start(GTK_BOX(hbOutof), lbOutof, FALSE, FALSE, 0);
	gtk_widget_set_size_request(lbOutof, 200, 80);

	enOutof = gtk_entry_new();
	gtk_widget_show(enOutof);
	gtk_box_pack_start(GTK_BOX(hbOutof), enOutof, TRUE, TRUE, 0);
	gtk_editable_set_editable(GTK_EDITABLE(enOutof), FALSE);

	btOutof = gtk_button_new_from_stock("gtk-edit");
	gtk_widget_show(btOutof);
	gtk_box_pack_start(GTK_BOX(hbOutof), btOutof, FALSE, FALSE, 0);
	GTK_WIDGET_SET_FLAGS(btOutof, GTK_CAN_DEFAULT);

	hbPriority = gtk_hbox_new(FALSE, 0);
	gtk_widget_show(hbPriority);
	gtk_box_pack_start(GTK_BOX(vbMain), hbPriority, TRUE, TRUE, 0);

	lbPri = gtk_label_new("Priority");
	gtk_widget_show(lbPri);
	gtk_box_pack_start(GTK_BOX(hbPriority), lbPri, FALSE, FALSE, 0);
	gtk_widget_set_size_request(lbPri, 200, 80);

	rdExigence = gtk_radio_button_new_with_mnemonic(NULL, "Exigence");
	gtk_widget_show(rdExigence);
	gtk_box_pack_start(GTK_BOX(hbPriority), rdExigence, FALSE, FALSE, 0);
	gtk_radio_button_set_group(GTK_RADIO_BUTTON(rdExigence), rdExigence_group);
	rdExigence_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(rdExigence));

	rdNormal = gtk_radio_button_new_with_mnemonic(NULL, "Normal");
	gtk_widget_show(rdNormal);
	gtk_box_pack_start(GTK_BOX(hbPriority), rdNormal, FALSE, FALSE, 0);
	gtk_radio_button_set_group(GTK_RADIO_BUTTON(rdNormal), rdExigence_group);
	rdExigence_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(rdNormal));
	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(rdNormal), TRUE);

	rdRandom = gtk_radio_button_new_with_mnemonic(NULL, "Random");
	gtk_widget_show(rdRandom);
	gtk_box_pack_start(GTK_BOX(hbPriority), rdRandom, FALSE, FALSE, 0);
	gtk_radio_button_set_group(GTK_RADIO_BUTTON(rdRandom), rdExigence_group);
	rdExigence_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(rdRandom));

	hbbPlan = gtk_hbutton_box_new();
	gtk_widget_show(hbbPlan);
	gtk_box_pack_start(GTK_BOX(vbMain), hbbPlan, FALSE, FALSE, 0);
	gtk_button_box_set_layout(GTK_BUTTON_BOX(hbbPlan), GTK_BUTTONBOX_END);

	btCancel = gtk_button_new_from_stock("gtk-cancel");
	gtk_widget_show(btCancel);
	gtk_container_add(GTK_CONTAINER(hbbPlan), btCancel);
	GTK_WIDGET_SET_FLAGS(btCancel, GTK_CAN_DEFAULT);

	btOK = gtk_button_new_from_stock("gtk-ok");
	gtk_widget_show(btOK);
	gtk_container_add(GTK_CONTAINER(hbbPlan), btOK);
	GTK_WIDGET_SET_FLAGS(btOK, GTK_CAN_DEFAULT);

	gtk_widget_show_all(GTK_WIDGET(winNewplan));
	gtk_main();
	return 0;
}

编译运行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/726854.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

珈和科技和比昂科技达成战略合作,共创智慧农业领域新篇章

6月14日&#xff0c;四川省水稻、茶叶病虫害监测预警与绿色防控培训班在成都蒲江举办。本次培训班由四川省农业农村厅植物保护站主办&#xff0c;蒲江县农业农村局、成都比昂科技筹办。四川省农业农村厅植物保护站及四川省14个市州36个县植保站负责人进行了观摩学习。 武汉珈…

轻松选购指南:如何挑选3D建模和3D渲染的高效计算机?

选择最适合 3D 建模和3D渲染的计算机可能是一项艰巨的任务&#xff0c;特别是对于初学者来说。有很多因素需要考虑&#xff0c;包括处理器、显卡、内存和存储容量。 如果你计划购买一台计算机或利用3D产品渲染服务&#xff0c;那么你必须了解需要考虑的特性。以下是选择3D建模…

数据结构(中)

完全二叉树的第6层有10个结点&#xff0c;那么有&#xff08;21&#xff09;个叶子结点。 10-52*2*2*2 设树中某结点不是根结点&#xff0c;则离它最近的祖先结点是双亲结点 一颗有5个结点的深度为3的二叉树采用顺序存储方式存储&#xff0c;存储数组的大小至少为7 看深度&…

python自动化系列:自动复制一个工作簿的所有工作表到其他工作簿

作品介绍 作品名称&#xff1a;自动复制一个工作簿的所有工作表到其他工作簿 开发环境&#xff1a;PyCharm 2023.3.4 python3.7 用到的库&#xff1a;os、xlwings 作品效果&#xff1a; 实现过程 一、代码设计 以下是代码的详细说明&#xff1a; 导入模块&#xff1a; …

数字乡村:绘就乡村振兴的智慧新画卷

在乡村振兴战略的宏伟蓝图下&#xff0c;“数字乡村”作为新时代农村现代化的重要抓手&#xff0c;正悄然改变着中国乡村的面貌。本文旨在深度剖析数字乡村建设的核心价值、关键技术、成功案例以及未来展望&#xff0c;为乡村振兴战略提供前瞻性的思考与启示。 数字乡村的核心价…

【Golang - 90天从新手到大师】Day09 - string

系列文章合集 Golang - 90天从新手到大师 String 一个字符串是一个不可改变的字节序列。字符串可以包含任意的数据&#xff0c;但是通常是用来包含人类可读的文本。 len()返回字符串字节数目&#xff08;不是rune数&#xff09;。 通过索引可以访问某个字节值&#xff0c;0…

Vue3 头像是圆形,hover上去时头像出现黑色半透明样式,且中间显示修改两字的实现

实现效果 原头像 hover效果 实现方式 博主在实际开发过程中使用mouseover和mouseout会出现无法点击或hover频繁闪动的问题&#xff0c;故这里采用的是css中的hover&#xff0c;利用hover也能轻松实现上述效果&#xff0c;且完全不会影响点击事件的使用。 <template> &…

Walrus:去中心化存储和DA协议,可以基于Sui构建L2和大型存储

Walrus是为区块链应用和自主代理提供的创新去中心化存储网络。Walrus存储系统今天以开发者预览版的形式发布&#xff0c;面向Sui开发者征求反馈意见&#xff0c;并预计很快会向其他Web3社区广泛推广。 通过采用纠删编码创新技术&#xff0c;Walrus能够快速且稳健地将非结构化数…

实践分享|关于 nebula-stats-exporter 的使用

大家好&#xff0c;这里是玖叁叁&#xff0c;目前从事全栈工程师工作&#xff0c;刚刚接触 NebulaGraph 不久&#xff0c;还在努力学习当中。图数据库可以高效地表达、存储和分析复杂关系和网络&#xff0c;在特定场景下有着不错的性能。希望通过这篇 nebula-stats-exporter 的…

从0-1实现一个自己的脚手架

当我们在开发的时候&#xff0c;时常会在创建项目的时候重复很多操作&#xff0c;比如下载相同的依赖(锁定依赖版本)、封装网络请求、封装路由、配置代码提示/检查、配置vite/webpack打包、配置自动导入(auto-import)、配置项目基础结构、注册全局指令等&#xff0c;有非常多重…

连锁餐厅降低员工离职率:发誓!绝不是靠“舌尖上的诱惑”

员工社交与成长&#xff0c;企业福利与文化&#xff0c;沃可趣多维度优化员工体验。 连锁餐饮业在全球范围内迅速发展&#xff0c;要为消费者提供更多便利&#xff0c;2023年中国餐饮市场连锁化率达到21%。 然而&#xff0c;这些分散式门店为企业运营创造了挑战。Black Box I…

爬山算法优点

人不走空 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌赋&#xff1a;斯是陋室&#xff0c;惟吾德馨 目录 &#x1f308;个人主页&#xff1a;人不走空 &#x1f496;系列专栏&#xff1a;算法专题 ⏰诗词歌…

前端练习小项目——视觉冲击卡片

前言&#xff1a; 前言&#xff1a;在学习完HTML和CSS之后&#xff0c;我们就可以开始做一些小项目了&#xff0c;本篇文章所讲的小项目为——视觉冲击卡片 ✨✨✨这里是秋刀鱼不做梦的BLOG ✨✨✨想要了解更多内容可以访问我的主页秋刀鱼不做梦-CSDN博客 先让我们看一下效果&a…

美国铁路客运巨头Amtrak泄漏旅客数据,数据销毁 硬盘销毁 文件销毁

旅客的Guest Rewards常旅客积分账户的个人信息被大量窃取。 美国国家客运铁路公司&#xff08;Amtrak&#xff09;近日披露了一起数据泄露事件&#xff0c;旅客的Guest Rewards常旅客积分账户的个人信息被大量窃取。 根据Amtrak向马萨诸塞州提交的泄露通知&#xff0c;5月15日…

微信小程序navigateTo异常(APP-SERVICE-SDK:Unknown URL)

背景 在开发小程序时&#xff0c;可能会用到banner&#xff0c;通过banner跳转至各种子页面。但是因为小程序自身的因素&#xff0c;有些是不允许的&#xff0c;比如通过banner跳转一个http/https链接。如果使用 wx.navigateTo完成跳转时&#xff0c;就会发生异常。 navigate…

HarmonyOS模拟器(phone-x86-api9)一直卡顿的解决方法

在DevEco Studio 3.1.1 Release版本中的Device Manager中创建本地的模拟器&#xff0c;创建phone-x86-api9模拟器成功&#xff0c;但是启动该新建的模拟器一直显示"HarmonyOS"logo图片&#xff0c;然后一直卡在这里&#xff0c;运行结果如下所示&#xff1a; 检查模…

分布式锁三种方案

基于数据库的分布式锁&#xff08;基于主键id和唯一索引&#xff09; 1基于主键实现分布式锁 2基于唯一索引实现分布式锁 其实原理一致&#xff0c;都是采用一个唯一的标识进行判断是否加锁。 原理&#xff1a;通过主键或者唯一索性两者都是唯一的特性&#xff0c;如果多个…

Ike-scan一键发现通过互联网的IPsec VPN服务器(KALI工具系列二十八)

目录 1、KALI LINUX 简介 2、Ike-scan工具简介 3、信息收集 3.1 目标主机IP&#xff08;服务器&#xff09; 3.2 KALI的IP 4、操作示例 4.1 简单扫描 4.2 范围扫描 4.3 扫描多个目标 4.4 输出扫描结果 4.5 特殊扫描 5、总结 1、KALI LINUX 简介 Kali Linux 是一个功…

区块链技术:探索7个物联网应用的潜力

在当今数字化时代&#xff0c;区块链技术逐渐成为一种受到广泛关注的技术创新。本文将以《区块链技术&#xff1a;探索7个物联网应用的潜力》为题&#xff0c;介绍区块链技术在物联网领域的七个应用潜力。物联网作为未来发展的重要方向&#xff0c;结合区块链技术的应用将为我们…

SAP PI/PO获取文件名及路径

Sender Adapter设置如下&#xff1a; UDF定义如下&#xff1a; DynamicConfiguration conf (DynamicConfiguration) container.getTransformationParameters().get(StreamTransformationConstants.DYNAMIC_CONFIGURATION); //get file name DynamicConfigurationKey keyFile…