1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本章节介绍在 yocto Qt5 文件系统中使用程序旋转 Qt 窗口。在嵌入式中有时候需要竖屏显示,有时候不能修改 Qt 源码,那么可以在 Qt 应用程序中将窗口旋转 90 度。方法是将主窗口放入到 QGraphicsScene 中,然后旋转 90 度,通过 QGraphicsView 显示。子窗口通过指针来访问父窗口达到旋转的效果。
例程在文档同一目录下,实现的功能是点击主窗口工具栏的打开文件,然后弹出子窗口选择文件(选择普通文件),选择完点击确认,子窗口关闭,主窗口的 textEdit 组件会显示文件内容。 在 main.cpp 中修改主窗口的显示过程,Rotate 为主窗口类: int main(int argc, char *argv[]) { QApplication a(argc, argv); Rotate w;//主窗口 /* * 旋转主窗口 */ QGraphicsScene *scene = new QGraphicsScene; QGraphicsProxyWidget *gpw = scene-》addWidget(&w); gpw-》setRotation(90);//旋转 90 度 QGraphicsView *view = new QGraphicsView(scene); view-》showFullScreen();//全屏显示 return a.exec(); } 添加完后如图 94.1: 子窗口通过“this”指针指定父窗口将所有项目界面加载到 QGraphicsScene,创建子窗口对象时代码如下: void Rotate::showOpenFile() { gf = new getfile(this);//子窗口调用 scene gf-》show(); connect(gf,SIGNAL(OK_signal()),this,SLOT(showText()));//接收子窗口发送过来的信号 } 完成后如图 94.2: 主窗口效果如图 94.3: 点击工具栏的打开文件,弹出子窗口,在子窗口中选择文件名, 显示出文件内容: 在开发板上运行时要根据屏幕大小来调整窗口尺寸。使用此方法一定要把工程中所有的窗口都放到Scene 中,才能达到旋转的效果。 |
|
|
|
只有小组成员才能发言,加入小组>>
820 浏览 0 评论
1162 浏览 1 评论
2537 浏览 5 评论
2872 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2722 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1125浏览 3评论
199浏览 2评论
465浏览 2评论
382浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
463浏览 1评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-31 00:28 , Processed in 1.163813 second(s), Total 80, Slave 61 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号