Qt Quick App的两种启动模式
2016-03-25 17:27
232 查看
QQmlApplicationEngine搭配WindowQQuickView搭配Item两者不同之处在于:使用QQuickView显示QML文档,对窗口的控制权(比如设置窗口标题、Icon、窗口的最小尺寸等)在C++代码;而使用QQmlApplicationEngine加载以Window为根对象的QML文档,QML文档则拥有窗口的完整控制权,可以直接设置标题、窗口尺寸等属性。1、QQmlApplicationEngine搭配Window启动方式:
main.c文件
[/code]main.qml文件
[/code]窗口
2、QQuickView搭配Itemmain.c文件
[/code]main.qml文件
[/code]
来自为知笔记(Wiz)
main.c文件
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
return app.exec();
}
[/code]main.qml文件
ApplicationWindow {
title: qsTr("Hello World")
width: 640
height: 480
visible: true
menuBar: MenuBar {
Menu {
title: qsTr("&File")
MenuItem {
text: qsTr("&Open")
onTriggered: messageDialog.show(qsTr("Open action triggered"));
}
MenuItem {
text: qsTr("E&xit")
onTriggered: Qt.quit();
}
}
}
MainForm {
anchors.fill: parent
button1.onClicked: messageDialog.show(qsTr("Button 1 pressed"))
button2.onClicked: messageDialog.show(qsTr("Button 2 pressed"))
button3.onClicked: messageDialog.show(qsTr("Button 3 pressed"))
}
MessageDialog {
id: messageDialog
title: qsTr("May I have your attention, please?")
function show(caption) {
messageDialog.text = caption;
messageDialog.open();
}
}
}
[/code]窗口
2、QQuickView搭配Itemmain.c文件
#include <QApplication>
#include <QQuickView>
#include <QGuiApplication>
#include <QQmlApplicationEngine>
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QQuickView viewer;
viewer.setResizeMode(QQuickView::SizeRootObjectToView);
viewer.setSource(QUrl("qrc:///main.qml"));
viewer.show();
return app.exec();
}
[/code]main.qml文件
import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
Rectangle{
width: 320;
height: 240;
}
[/code]
来自为知笔记(Wiz)
相关文章推荐
- android蓝牙技术
- cocos2dx之C++求360度定长向量的xy方向的分量
- Android开机自启动程序
- Objective-C中的集合类
- Android AndFix热补丁动态修复框架使用教程
- Android侧滑
- CSAPP Tiny web 服务器源码分析及搭建运行
- android框架之XUtils
- ccArrayRemoveAllObjects
- Android中的各种加密和MD5摘要
- Objective-C ---内存管理
- Android扫描文件
- iOS中跳转到一个tabbar对应的界面时,tabbar联动效果
- Android Studio IDE 所遇问题汇总
- android--显式跳转和隐式跳转
- 【转】iOS开发入门:Xcode常用快捷键
- iOS获取设备唯一标识的各种方法?IDFA、IDFV、UDID分别是什么含义?
- Android实用开发技巧之二:用Serializable方式及Parcelable方式实现Intent传递对象功能
- android之多渠道打包---秒打秒打
- app中使用用户名/邮箱/手机号登录的思路分析