ReferenceError в qt вкладке быстрого управления
Я написал программу QT Quick с использованием TabView. Когда я щелкаю по кнопке b1, которая находится в Tabview, программа должна вызвать show_text () и напечатать текст b1, но при этом вывести "ReferenceError: b1 не определено". Любое предложение будет оценено, спасибо.
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Window 2.1
ApplicationWindow {
function show_text() {
console.log(b1.text)
}
TabView {
id: tv
Tab {
id: tab1
Button{
id: b1
text:"b1's text"
onClicked: {
//console.log(b1.text)
show_text()
}
}
}
}
}
2 ответа
Передать объект в качестве параметра
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Window 2.1
ApplicationWindow {
function show_text(myobject) {
console.log(myobject.text)
}
TabView {
id: tv
Tab {
id: tab1
Button{
id: b1
text: "b1's text"
onClicked: {
show_text(b1)
}
}
}
}
}
Вы можете получить доступ к вашему объекту с помощью этого примера.
ApplicationWindow {
function show_text() {
console.log(tv.b1Text);
}
TabView {
id: tv
property alias b1Text: b1.text
Tab {
id: tab1
Button{
id: b1
text:"b1's text"
onClicked: {
//console.log(b1.text)
show_text()
}
}
}
}
}