- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第24章节 界面布局
第24章 界面布局 本章讨论GTK+界面布局的相关编程技术,其中主要的内容包括三个方面 ,分别是界面布局的基本概念、容器的基本概念和使用容器进行布局的方法。容器是GTK+界面布局的基本构件,大多数界面构件都需要放在容器中显示,同时这些界面构件自身也可作为容器对待。所以,有关界GTK+面布局的知识围绕容器展开。容器的运用所带来的最大优势在于,它以一定比例有效地分配应用程序界面的可视区域,因此它是一种先进的界面设计思想。 24.1 界面布局基本概念 在进行界面布局前,首先需要认识界面布局的一些基本概念和界面布局的原理和约定。所有的界面最基本的属性就是它的宽度和高度,计算机的屏幕上的可视区域是有限的,如果程序界面的尺寸过大,超出可视范围的构件不能显示出来。如果程序界面过小,那么对程序的易用性会造成一定影响。窗体构件是可访问的最底层容器,窗体构件和其他构件的组合方法是界面布局的原理。另外,布局约定也是界面布局的重要概念,下面将详细讲述这些知识。 24.1.1 界面的宽度与高度 受计算机硬件环境的影响,操作系统的可视区域是有一定大小限制的。与其相关的有两个基本数值,其一,显示器的对角线尺寸,PC和笔记本电脑的对角线尺寸通常在12英寸至22英寸之间,移动设备的显示器尺寸在1英寸至8英寸之间。其二,显示器的分辨率,通常是以像素为单位的屏幕宽度与高度的乘积。 24.1.2 窗体基本组成 窗体构件(GtkWindow)是可访问的最底层容器,程序中其他界面构件都必须装入窗体构件中才能显示出来。一个典型的窗体内部包括以下可见成员界面构件: 24.1.3 布局约定 界面布局有一定惯例可循,这些约定主要目的是为了便于用户操作和界面的整洁美观。下面简单介绍几条: 1.窗体样式风格一致性 2.最少窗体原则 3.窗体的功能与类型 4.使用现有的窗体模板 24.2 组装盒构件 组装盒构件(GtkBox)构件是一类简单的容器,组装盒本身没有显示也没有信号,它用于装入其他的窗体构件。任何复杂的窗体结构都可以用组装盒的层叠来实现。本节将介绍组装盒构件的属性和操作方法。 24.2.1 组装盒的原理 组装盒构件本身只能装入一个界面构件,它不能被直接使用。GTK+为组装盒定义了两个子类,分别是纵向组装盒构件(GtkVBox)和横向组装盒(GtkHbox),他们为装入多个构件提供了实现方法。 24.2.2 组装盒示范程序 下面用一个程序来演示组装盒的使用方法,程序中将嵌套使用纵向组装盒和横向组装盒,并且使用不同的填充方式与扩充方式。 24.2.3 表组装的原理 表构件(GtkTabel)是一种二维容器,它的每一个单元格可以放入一个窗体构件。构件可以占满所指定单元格的所有空间。 24.2.4 表组装示例 下面用一个程序来演示表构件的使用方法,程序中将创建一个尺寸为3×4的表格。 24.3 容器 容器构件(GtkContainer)是所有容器的父类,例如,组装盒构件是容器构件的子类。为了特定场合的应用,GTK+定义了一系列特殊的容器。本节将介绍这些容器的使用方法。 24.3.1 事件盒 事件盒本身不显示任何内容,它可以放置一个界面构件并显示该界面构件的内容。如果没有指定事件盒的尺寸,那么事件盒的尺寸就与放在其内的界面构件的尺寸相同,事件盒的位置与期内的界面构件完全重叠。当鼠标单击该界面构件时,事件盒会接收到button_press_event事件,这时可通过回调函数代替界面构件完成对应的操作。 24.3.2 对齐构件 对齐构件(GtkAlignment)是一种可一定容器内界面构件对齐方式的容器构件。创建对齐构件可使用gtk_alignment_new()函数,创建后可使用gtk_alignment_set()函数修改其内的界面构件对齐方式。 24.3.3 固定容器 固定容器构件(GtkFixed)是一种类似于传统布局方式的容器。它允许将构件放在窗口的固定位置,这个位置是相对于固定容器左上角的水平方向和垂直方向像素值。构件的位置可以动态改变。在绘图程序、游戏程序中,固定容器的作用非常重要。 24.3.4 布局容器 布局容器构件(GtkLayout)与固定容器构件非常相似,不过它可以在一个无限的滚动区域定位构件(不能大于232像素)。 24.3.5 框架构件 框架构件(GtkFrame)是一种用于组装一个或多个界面构件的容器。框架本身由一组边框和一个标签,它常用于在程序界面中将一组相关的构件组合在一起,如图24.14所示。 24.3.6 比例框架 比例框架构件(GtkAspectFrame)是框架构件的子类,它的作用是使子构件的外观比例保持一定的值。在有需要的情况下,比例框架可增加额外的可用空间。 24.3.7 分栏窗体构件 分栏窗体构件(
您可能关注的文档
- 第11章节 嵌入式GUI程序开发.ppt
- 第11章节 网络安全.ppt
- 第11章节 交通运输.ppt
- 第11章节 行 为.ppt
- 第11章节 虚拟局域网.ppt
- 第11章节-计算机网络安全标准简介.ppt
- 第11章节现代货币创造机制.ppt
- 第11章节 群体心理.ppt
- 第10章节 项目管理和优化(网络计划技术).ppt
- 第11章节 多彩的物质世界.doc
- DB23_T 3866-2024冰上龙舟赛事组织服务规范.docx
- DB32 2163-2012 棉纱单位可比综合电耗限额及计算方法.docx
- DB32∕T 2429-2013 棉花田间生长发育观察记载规范.docx
- DB23_T 3820-2024 工业互联网综合平台数据质量管理规范.docx
- DB23_T 3474-2023非煤智慧矿山信息系统技术规范.docx
- DB3201_T 1106-2022 工程地质层划分技术规范.docx
- DB33T 2515-2022公共机构“零碳”管理与评价规范.docx
- DB3301_T 0415-2023 装修垃圾收运处置管理规范.docx
- DB3311/T 106―2019“丽水山居”民宿服务要求与评价规范.docx
- DB3201T 1127-2022 慈善捐赠受赠管理规范.docx
最近下载
- 亿赛通电子文档安全管理系统V5.0--客户端使用手册V1113379.pdf VIP
- [标准规范]煤矿窄轨铁道维修质量标准及检查评级办法(精编).doc VIP
- 人教统编版小升初语文总复习专题七:句式变换课件(共28张PPT).ppt VIP
- 2025重庆永川区板桥镇村(社区) 后备干部选拔笔试备考试题及答案解析.docx VIP
- 深度解析《GBT 44026-2024预制舱式锂离子电池储能系统技术规范》.pptx
- 品质部各岗位职责说明书.pdf VIP
- 2022.01 深圳南山红花岭工业区城市更新项目一期建筑方案设计 华艺.pdf VIP
- 电冰箱安全技术规程培训.pptx VIP
- 07FK02 防空地下室 通风设备安装.pdf VIP
- 解决我国农民负担问题的路线图设想-中国发展.pdf
文档评论(0)