嵌入式linux用户图形界面编程.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式linux用户图形界面编程

第9章 嵌入式Linux用户图形界面编程 9.1 Linux图形开发基础 GUI的一般架构 嵌入式GUI底层支持库 嵌入式GUI高级函数库 9.2 嵌入式Linux图形用户界面简介 Microwindows/Nano-X MiniGUI OpenGUI 9.3Qt/Embedded嵌入式图形开发基础 Qt/Embedded概述 创建Qt/Embedded开发环境 Qt/Embedded的使用 9.4 综合训练之Hello程序 发布Qt/Embedded程序到目标板 (1)基本部件。 一个窗口部件可包含任意数量的子部件。子部件在父部件的区域内显示。没有父部件的部件是顶级部件(比如一个窗口),Qt不在窗口部件上施加任何限制。任何部件都可以是顶级部件;任何部件都可以是其他部件的子部件。通过使用布局管理器可以自动设定子部件在父部件区域中的位置,如果喜欢也可以手动设定。如果父部件被停用、隐藏或删除后,同样的动作会递归地应用于它的所有子部件。 标签、消息框、工具提示等并不局限于使用同一种颜色、字体和语言。通过使用HTML的一个子集,Qt的文本渲染部件能够显示多语言宽文本,下面是一个实例代码: #include qapplication.h #include qlabel.h int main( int argc, char **argv ) { QApplication app( argc, argv ); QLabel *hello = new QLabel( font color=blueHello iQt/Embedded!/i/font, 0 ); app.setMainWidget( hello ); hello-show(); return app.exec(); } 这是我们接触到的第一个Qt程序,为了使大家便于理解,对程序的代码一行一行地解说。 #include qapplication.h 这一行引用了包含QApplication类定义的头文件。在每一个使用Qt的应用程序中都必须使用一个QApplication对象。QApplication管理了各种各样的应用程序的广泛资源,比如默认的字体和光标,等等。 #include qlabel.h 引用了包含QLabel类定义的头文件,因为本例使用了QLabel对象。QLabel可以像其他QWidget一样管理自己的外形。一个窗口部件就是一个可以处理用户输入和绘制图形的用户界面对象。程序员可以改变它的全部外形和其他属性,以及这个窗口部件的内容。 int main( int argc, char **argv ) main()函数是程序的入口。在使用Qt的所有情况下,main()只需要在把控制转交给Qt库之前执行一些初始化,然后Qt库通过事件来向程序告知用户的行为。 argc是命令行变量的数量,argv是命令行变量的数组,这是一个C/C++特征。 QApplication app( argc, argv ); app是这个程序的Qapplication,它在这里被创建并且处理命令行变量。所有被Qt识别的命令行参数都会从argv中被移除,并且argc也因此而减少。在任何Qt的窗口系统部件被使用之前必须创建QApplication对象。 QLabel *hello = new QLabel( font color=blueHello iQt/Embedded!/i/font, 0 ); 这里是在QApplication之后接着的是第一个窗口系统代码,创建了一个标签。这个标签被设置成显示“Hello Qt/Embedded!”并且字体颜色为蓝色,“Qt/Embedded!”为斜体。因为构造函数指定0为它的父窗口,所以它自己构成了一个窗口。 app.setMainWidget( hello ); 这个按钮被选为这个应用程序的主窗口部件。如果用户关闭了主窗口部件,应用程序就退出了。设置主窗口部件并不是必须的步骤,但绝大多数程序都会这样做。 hello.show(); 当创建一个窗口部件的时候,它是不可见的。必须调用show()来使它变为可见的。 return app.exec(); 这里就是main()把控制转交给Qt,并且当应用程序退出的时候exec()就会返回。在exec()中,Qt接受并处理用户和系统的事件并且把它们传递给适当的窗口部件。 (2)画布。 QCanvas类提供一个2D图形的高级接口。它能够处理大量的画布项目来描述直线、矩形、椭圆、文本、位图,以及动画等。画布项目很容易做成交互式界面,例如,支持用户移动等。 画布项目是QCanvasItem子类的实例。它们比窗口部件轻巧得多,能很快地移

文档评论(0)

sandaolingcrh + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档