关于QQuickWidget嵌入到复杂的Widget里面显示黑屏

寒山-居士 2014-07-07 09:50:03
最近打算将写好的qml文件嵌入到一个比较复杂的聊天界面里面,这个复杂的界面有上下左右的widget另外还有中间的一个widget,这个widget主要存放qml界面显示,但是死活嵌入不进去,就是显示黑屏,但是我新建一个小项目,直接在widget里面加入嵌入qml的片段或者是自定义一个widget然后在主widget里面实例 都是可以的,以上都是基于qt5.3.1,好像qt5.3是有这个bug的
嵌入qml到widget的示例代码
QQuickWidget *view1 = new QQuickWidget();
QHBoxLayout* layout = new QHBoxLayout(this);
layout->setGeometry(this->rect());
// view1->setWindowOpacity(0.5);
connect(view1, &QQuickWidget::statusChanged, this, &ChildWidget::onStatusChangedWidget);
connect(view1, &QQuickWidget::sceneGraphError, this, &ChildWidget::onSceneGraphError);
view1->setResizeMode(QQuickWidget::SizeRootObjectToView);
view1->setSource(QUrl("qrc:/main.qml"));
layout->addWidget(view1);
setLayout(layout);
...全文
1461 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tony2278 2016-08-31
  • 打赏
  • 举报
回复
寒山-居士 2014-07-07
  • 打赏
  • 举报
回复
没有人可以?
寒山-居士 2014-07-07
  • 打赏
  • 举报
回复
引用 2 楼 BXport 的回复:
我也不会,是看见你发表的一片关于qt for Android的微博过来问问的,为什么我把我的java程序放在dug下面后,每次启动以后,我的java文件就没有了,我看了下,,貌似它每次启动,bug下面所有的文件都是重新生成的,那样,我如果要调用java程序应该怎么弄啊!
QAndroidJniObject::callStaticMethod<void>("org/qtproject/example/notification/NotificationClient", "notify", "(Ljava/lang/String;)V", javaNotification.object<jstring>()); } updateAndroidNotification这个方法就是如何调用java文件的 CallStaticMethod<void>这个方面里面第一个参数是java文件的位置,第二个参数是这个java类的一个方法,第三个参数这个方法里面的参数类型,第四个就是方法里面的参数。 第一个参数就是java文件的位置,这个位置好像在qt安装目录下面,找下 其实返回值就是cannStaticMethod()的返回值,具体参考Qt帮助文档 QAndroidJniObject::callStaticMethod
寒山-居士 2014-07-07
  • 打赏
  • 举报
回复
引用 2 楼 BXport 的回复:
我也不会,是看见你发表的一片关于qt for Android的微博过来问问的,为什么我把我的java程序放在dug下面后,每次启动以后,我的java文件就没有了,我看了下,,貌似它每次启动,bug下面所有的文件都是重新生成的,那样,我如果要调用java程序应该怎么弄啊!
你调用java程序,可以参考Qt帮助文档下的一个例子,就是Notify通知的例子 路径如下 Qt 5.3/Qt Android Extras/Qt Notifier
寒山-居士 2014-07-07
  • 打赏
  • 举报
回复
引用 11 楼 jiangcaiyang123 的回复:
特意跑过来赞一下居士。
更新了下UI,稍微好看点 更新内容: 1.提供了可移动和可关闭,可最小化功能 2.修正了一些UI布局 3.预留一些展示位 下载地址 :http://pan.baidu.com/s/1gdtb9U7
晨曦呢 2014-07-07
  • 打赏
  • 举报
回复
我也不会,是看见你发表的一片关于qt for Android的微博过来问问的,为什么我把我的java程序放在dug下面后,每次启动以后,我的java文件就没有了,我看了下,,貌似它每次启动,bug下面所有的文件都是重新生成的,那样,我如果要调用java程序应该怎么弄啊!

16,203

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧