界面构件开发之RC文件

news2024/11/28 3:20:06

代码;

#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;
}

编译运行

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

无人机校企合作

有没有想过&#xff0c;无人机和校企合作能碰撞出怎样的火花&#xff1f;&#x1f525;今天就来给大家揭秘一下这个神秘组合&#xff01; 无人机&#xff0c;作为现代科技的代表&#xff0c;已经渗透到我们生活的方方面面。而校企合作&#xff0c;更是推动科技创新、培养人才的…

Net开源项目推荐-WPF控件样式篇

Net开源项目推荐-WPF控件样式篇 HandyControlWPFDeveloperswpf-uidesignLive-ChartsAvalonDock HandyControl WPF控件库,比较常用的WPF开源控件库&#xff0c;对WPF原有控件样式都进行了重写和扩展&#xff0c;也增加了许多特别的控件&#xff0c;非常好用 github仓库&#x…

Centos7.9安装openldap

文章目录 一、背景二、正文2.1 openldap服务端必要软件安装2.1.1使用yum命令安装2.1.2安装libdb相关依赖2.1.3复制一个默认配置到指定目录下&#xff0c;并授权&#xff0c;这一步一定要做&#xff0c;然后再启动服务&#xff0c;不然生成密码时会报错2.1.4授权给ldap用户&…

CSS规则——font-face

font-face 什么是font-face&#xff1f; 想要让网页文字千变万化&#xff0c;仅靠font-family还不够&#xff0c;还要借助font-face&#xff08;是一个 CSS 规则&#xff0c;它允许你在网页上使用自定义字体&#xff0c;而不仅仅是用户系统中预装的字体。这意味着你可以通过提…

Web前端项目-页面动态背景【附完整源码】

页面动态背景 一&#xff1a;花瓣背景 页面效果&#xff1a; HTML代码 <!DOCTYPE HTML> <HTML> <TITLE>花瓣漫舞</TITLE> <META NAME"Generator" CONTENT"EditPlus"> <META NAME"Author" CONTENT"&quo…

【ACM出版】2024人工智能与自然语言处理国际学术会议(AINLP 2024,7月19-21)

2024人工智能与自然语言处理国际学术会议&#xff08;AINLP 2024&#xff09;将于2024年7月19-21日在中国珠海召开&#xff0c;该会议作为第四届人工智能、自动化与高性能计算国际会议&#xff08;AIAHPC 2024&#xff09;分会场召开。 本次会议主要围绕“人工智能与自然语言处…

2024高考-优先选专业还是优先选学校

分数限制下&#xff0c;选好专业还是选好学校&#xff1f; 24年高考帷幕落下&#xff0c;一场新的思考与选择悄然来临。对于每一位高考考生&#xff0c;学校和专业都是开启大学新生活的两个前置必选项。但有时候“鱼与熊掌不可兼得”&#xff0c;在分数受限的条件下&#xff0…

CubeFS - 新一代云原生存储系统

CubeFS 是一种新一代云原生存储系统,支持 S3、HDFS 和 POSIX 等访问协议,支持多副本与纠删码两种存储引擎,为用户提供多租户、 多 AZ 部署以及跨区域复制等多种特性。 官方文档 CubeFS 作为一个云原生的分布式存储平台,提供了多种访问协议,因此其应用场景也非常广泛,下面…

Retrofit类型安全的HTTP客户端库

简介 Retrofit是Square公司开发的一个类型安全的HTTP客户端库&#xff0c;用于Android和Java平台&#xff0c;它使得与Web服务的交互变得更加简单快捷。Retrofit将HTTP API转换成Java接口&#xff0c;让你可以用更简洁的代码形式调用RESTful API&#xff0c;Android网络编程重点…

中国机器人产业崛起,德国市场面临30%的份额挑战

导语 大家好&#xff0c;我是社长&#xff0c;老K。专注分享智能制造和智能仓储物流等内容。 新书《智能物流系统构成与技术实践》 随着科技的不断进步&#xff0c;机器人行业正迎来前所未有的发展机遇。令人震惊的是&#xff0c;根据最新统计数据&#xff0c;中国机器人产业在…

数据结构之“算法的时间复杂度和空间复杂度”

&#x1f339;个人主页&#x1f339;&#xff1a;喜欢草莓熊的bear &#x1f339;专栏&#x1f339;&#xff1a;数据结构 目录 前言 一、算法效率 1.1算法的复杂度概念 1.2复杂度的重要性 二、时间复杂度 2.1时间复杂度的概念 2.2大O的渐进表示法 2.3常见的时间复杂度…

服务器主机托管服务内容科普

在现代信息技术快速发展的背景下&#xff0c;服务器主机托管服务已成为众多企业、机构和个人不可或缺的一部分。本文将为您详细科普服务器主机托管服务的内容&#xff0c;帮助您更好地理解和选择适合自己的托管方案。 一、硬件与基础设施 服务器主机托管服务首先提供了硬件和网…

DevExpress WPF中文教程:Grid - 如何将更改发布到数据库(设计时)?

DevExpress WPF拥有120个控件和库&#xff0c;将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序&#xff0c;这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…

如何优雅的使用Github Action服务来将Hexo部署到Github Pages

文章目录 参考文章前提条件1. 初始化Hexo2. 初始化仓库3. 创建Token4. 修改_config.yml5. 配置Github Action工作流6. 推送验证7. 配置Github Pages8. 修改Hexo主题样式10. 添加文章遇到了一些问题和方案1. 网站没有样式问题2. 图片不显示 参考文章 Bilibili视频教程-9分钟零成…

2024年综合艺术与媒体传播国际会议(ICIAMC 2024)

2024年综合艺术与媒体传播国际会议(ICIAMC 2024) 2024 International Conference on Integrated Arts and Media Communication (ICIAMC 2024) 会议地点&#xff1a;贵阳&#xff0c;中国 网址&#xff1a;www.iciamc.com 邮箱: iciamcsub-conf.com 投稿主题请注明:ICIAMC…

【漏洞复现】全程云OA svc.asmx SQL注入漏洞

免责声明&#xff1a; 本文内容旨在提供有关特定漏洞或安全漏洞的信息&#xff0c;以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步&#xff0c;并非出于任何恶意目的。阅读者应该明白&#xff0c;在利用本文提到的漏洞信息或进行相关测…

一个简单好用安全的开源交互审计系统,支持SSH,Telnet,Kubernetes协议

前言 在当今的企业网络环境中&#xff0c;远程访问和交互审计成为了保障网络安-全的重要组成部分。然而&#xff0c;现有的解-决方案往往存在一些痛点&#xff0c;如复杂的配置、有限的协议支持、以及审计功能的不足。这些问题不仅增加了IT管理员的负担&#xff0c;也为企业的…

Ecahrts竖向柱状图实现自动滚动

效果如下&#xff1a; 1.首先声明一个timer定时器标识 let timer: NodeJS.Timer; // 定时器 2.再声明窗口展示的数量&#xff0c;yAxisIndex2用来记录当前index已经加了多少&#xff0c;方便再formatter中格式化标题的相关信息 const dataZoomEndValue 6; // 数据窗口范围的…

【0-1系列】从0-1快速了解搜索引擎是什么以及怎么用(上)

友情链接 社区开发版安装部署与使用教程社区版家族V2024.5版本更新说明 START>>1.快速了解搜索引擎 什么是搜索引擎数据库 搜索引擎数据库是一类专门用于数据内容搜索的NoSQL数据库&#xff0c;是非结构化大数据处理分析领域中重要的基础支撑软件。 伴随互联网、移动…

scene graph generation benchmark关于visual genome的数据划分(train,test,val)

scene graph generation benchmark关于visual genome的数据划分&#xff08;train&#xff0c;test&#xff0c;val&#xff09; 前言 前言 很多做scene graph generation&#xff0c;准备测试的同学&#xff0c;发现visual genome并没有提供官方的训练train&#xff0c;测试t…