当我单击一个框时,我想从“接收索赔”框架(在main.qml的TabView中的一个选项卡中)更改为“钱包信息”(在TabView的另一个选项卡中,也在“钱包”中的StackView中)。 “接收索赔”中的按钮。我该怎么办?
我已经尝试过在main.qml和ReceiveClaimFrame.qml中为“钱包”和“钱包信息”设置组件。我也尝试过在“接收索赔”中使用装载程序。
ReceiveClaimFrame.qml:
CustomButton{
id: gButton
buttonText: "Go"
onClicked: {
bar.currentIndex = 0
load.source = "WalletFrame.qml"
walletFrame.rightRect.push(walletInfoFrame)
wiButton.selected = true
nwButton.selected = false
lwButton.selected = false
closewButton.selected = false
clearwButton.selected = false
wiButton.state = "Selected"
nwButton.state = ""
lwButton.state = ""
closewButton.state = ""
clearwButton.state = ""
}
}
}
}
Loader {
id: load
}
main.qml:
TabView{
id: bar
frameVisible: true
tabsVisible: true
currentIndex: 0
anchors.fill: parent
Tab{
id: tab1
title: qsTr("Wallet")
WalletFrame {
id: walletFrameParent
}
}
WalletFrame.qml:
StackView {
id: rightRect
anchors.right: parent.right
anchors.left: leftRect.right
anchors.top: parent.top
anchors.bottom: parent.bottom
initialItem: walletInfoFrame
Component {
id: walletInfoFrame
WalletInfoFrame {
}
}
应该在单击gButton时显示“ Wallet Info”框架,但出现错误,提示“无法调用未定义的方法'push'”,“未定义'rightRect'”或“'walletFrame'没有定义”。 “ bar.currentIndex = 0”可以正确地将main.qml中的选项卡更改为索引0,但是其余的(无论是否作为组件包括在内)都将是不确定的。