Size: a a a

2021 April 03

МВ

Макс Воробьев... in Qt
Anatoly Shirokov
что за зверь?
у Qml Object как правило есть default property, в которое записываются все child items
источник

МВ

Макс Воробьев... in Qt
Anatoly Shirokov
что за зверь?
ApplicationWindow {
   id: root
   width: 400
   height: 500
   visible: true
   title: qsTr("Hello World")

   Component {
       id: testItem
       Item {
           id: childItem
           width: 20
           height: 20
       }
   }

   Component.onCompleted: {
       for (var k=0; k < root.contentData.length; ++k) console.log(k, root.contentData[k])
   }
}

qml: 0 QQmlComponent(0x56325ec7a860)
источник

AS

Anatoly Shirokov in Qt
ну, значит предложенный способ не совсем пригоден для полной инкапсуляции, но при нормальном использовании вполне себе.
источник

AS

Anatoly Shirokov in Qt
Макс Воробьев
ApplicationWindow {
   id: root
   width: 400
   height: 500
   visible: true
   title: qsTr("Hello World")

   Component {
       id: testItem
       Item {
           id: childItem
           width: 20
           height: 20
       }
   }

   Component.onCompleted: {
       for (var k=0; k < root.contentData.length; ++k) console.log(k, root.contentData[k])
   }
}

qml: 0 QQmlComponent(0x56325ec7a860)
а это что за Qt?
источник

AS

Anatoly Shirokov in Qt
у меня на Qt 5.15.2 не достучаться до этого
источник

AS

Anatoly Shirokov in Qt
import QtQuick 2.15
import QtQuick.Window 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.12

Window {
   width: 640
   height: 480
   visible: true
   title: qsTr("Hello World")

   ColumnLayout {
       anchors.fill: parent
       MyItem {
           id: item
           Layout.fillWidth: true
           Layout.fillHeight: true
       }
       Button {
           text: "test"
           Layout.fillWidth: true
           onClicked: {
               for (var i = 0; i < item.contentData.length; ++i) {
                   console.log(item.contentData[i])
               }
           }
       }
   }
}
источник

AS

Anatoly Shirokov in Qt
валится при клике
источник

МВ

Макс Воробьев... in Qt
Anatoly Shirokov
у меня на Qt 5.15.2 не достучаться до этого
у item default property - children, емнип
источник

AS

Anatoly Shirokov in Qt
Макс Воробьев
у item default property - children, емнип
так покажи как?
источник

МВ

Макс Воробьев... in Qt
Макс Воробьев
у item default property - children, емнип
изменяет
источник

AS

Anatoly Shirokov in Qt
покажи как достучатся до компонента
источник

МВ

Макс Воробьев... in Qt
источник

AS

Anatoly Shirokov in Qt
про data я знаю, а причем здесь тогда contentData?
источник

МВ

Макс Воробьев... in Qt
Anatoly Shirokov
про data я знаю, а причем здесь тогда contentData?
у ApplicationWindow дефолтным указан contentData
источник

МВ

Макс Воробьев... in Qt
источник

МВ

Макс Воробьев... in Qt
Anatoly Shirokov
про data я знаю, а причем здесь тогда contentData?
т е скорее частный случай
источник

AS

Anatoly Shirokov in Qt
вот так прокатило вытащить:
import QtQuick 2.15
import QtQuick.Window 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.12

Window {
   width: 640
   height: 480
   visible: true
   title: qsTr("Hello World")

   property var dummy: null

   ColumnLayout {
       anchors.fill: parent
       MyItem {
           id: item
           Layout.fillWidth: true
           Layout.fillHeight: true
       }
       Button {
           text: "test"
           Layout.fillWidth: true
           onClicked: {
               for (var i = 0; i < item.data.length; ++i) {
                   console.log(item.data[i])
               }
           }
       }
       Loader {
           id: loader
           sourceComponent: dummy
           Layout.fillWidth: true
           Layout.fillHeight: true
           onLoaded: {
               loader.item.color = "black"
               console.log("loaded")
           }
       }
   }

   Component.onCompleted: {
       dummy = item.data[0]
   }
}
источник

AS

Anatoly Shirokov in Qt
@siilky вообщем, не совсем инкапсуляция выходит, но так врядли кто-то ломать будет, как в приведенном коде выше
источник

AS

Anatoly Shirokov in Qt
кто будет так вытаскивать сам себе злобный буратино - себе дороже
источник
2021 April 04

FS

Flower Surgeon in Qt
товарищи, а что будет эффективнее использовать для чтения из QFile? QByteArray или QVector(std::vector)?
источник