Передача значений из одного файла QML в другой



  • Всем привет.
    Есть 2 файла QtQuick: main.qml и Page1.qml

    В файле main.qml есть кнопка Write. Она предназначена для отправки всего что есть через СОМ порт. Не суть. Суть в том, что по нажатию на эту кнопку, я должен забрать значения с SpinBox'a, который описан в файле Page1.qml.

    Как передать данные в С++ - я знаю, а вот как забрать данные с другого QML файла - нет.

    Я пробовал QML сигналы писать, типа:

    signal test(spBox_Gear.value)
    

    но увы. Ругается на синтаксическую ошибку.

    В интернете только описание того, как передавать значения с QML в С++ и наоборот. Или я искал плохо.



  • @razorqhex
    Create alias for spin box on the top level in page1. You might have created page1 object in main.qml. assign id to page1 and access component with id.alias

    eg

    page1{
      property alias spinBox: spinBoxId
      SpinBox{
        id: spinBoxId
       ......
       }
    }
    main.qml
    
    Page1{
       id: pageId.
    }
    ....
    onClicked:{
       pageId.spinBox.value
    }
    


  • @Tirupathi-Korla said in Передача значений из одного файла QML в другой:

    Create alias for spin box on the top level in page1. You might have created page1 object in main.qml. assign id to page1 and access component with id.alias

    eg

    page1{
      property alias spinBox: spinBoxId
      SpinBox{
        id: spinBoxId
       ......
       }
    }
    main.qml
    
    Page1{
       id: pageId.
    }
    ....
    onClicked:{
       pageId.spinBox.value
    }
    

    It seems to work. Thanks again.
    It turns out that every element where I need to take values should be described in this way? There are 3 such pages


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.