【问题标题】:QtQuick get the base form dimensionsQtQuick 获取基本表单尺寸
【发布时间】:2019-05-23 12:10:23
【问题描述】:

我的问题很简单,因为我对 qml 和 qtquick 很陌生: 我试图在所有窗口几何图形上显示 QtQuick TabView,但没有出现任何窗口/窗体/小部件,我想知道为什么

    //main.cpp        
    #include <Qt3DQuickExtras/qt3dquickwindow.h>
    #include <QGuiApplication>
    #include <QScreen>

    int main(int argc, char **argv)
    {
        QGuiApplication app(argc, argv);

        Qt3DExtras::Quick::Qt3DQuickWindow view;
        view.setSource(QUrl("qrc:/qmain"));
        view.setWindowState(Qt::WindowMaximized);
        QScreen *s  = QGuiApplication::screens().at(0);
        view.setGeometry(s->availableGeometry());
        view.show();

        return app.exec();
     }
     /*=====
     qml file
     =====*/
     import QtQuick 2.3
     import QtQuick.Scene2D 2.9
     import QtQuick.Controls 1.4 as ctrl1
     import QtQuick.Layouts 1.2
     import QtQuick.Controls 2.5 as ctrl2

     Item {
        id: root
        visible: true
        anchors.fill: parent
        width: offscreenTexture.width
        height: offscreenTexture.height
        ctrl1.TabView{
            id: tabView
            anchors.left: parent
            ctrl1.Tab{
                id: tabPlanDef
                title: "Loadplan def."
            }
            ctrl1.Tab{
                id: tabObjMng
                title: "Object Manager"
            }
            ctrl1.Tab{
                id: tabDataTbl
                title: "Data Table"
            }
        }
     }

【问题讨论】:

    标签: qt qtquick2 qtquickcontrols2


    【解决方案1】:

    您的示例不完整且无法重现。 不过我可能解决了你的问题。

    • 您必须使用更新版本的 QtQuick。

      import QtQuick 2.11

    • Ctrl1 必须以大写开头。

      import QtQuick.Controls 1.4 as Ctrl1

    完整的qml代码:

    import QtQuick 2.11
    import QtQuick.Window 2.11
    import QtQuick.Scene2D 2.9
    import QtQuick.Controls 1.4 as Ctrl1
    import QtQuick.Layouts 1.2
    
    Window {
        visible: true
        width: 640
        height: 480
    
        Item {
           id: root
           visible: true
           anchors.fill: parent
           Ctrl1.TabView{
               id: tabView
               anchors.fill: parent
               Ctrl1.Tab{
                   id: tabPlanDef
                   title: "Loadplan def."
               }
               Ctrl1.Tab{
                   id: tabObjMng
                   title: "Object Manager"
               }
               Ctrl1.Tab{
                   id: tabDataTbl
                   title: "Data Table"
               }
           }
        }
    }
    

    【讨论】:

    • 感谢您的好意您的更新工作,但我需要一个合并的窗口而不是其中的 2 个
    猜你喜欢
    • 2012-11-02
    • 1970-01-01
    • 1970-01-01
    • 2012-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    • 2015-10-24
    相关资源
    最近更新 更多