簡體   English   中英

嘗試增加進度時綁定循環錯誤

[英]Binding Loop Error While Trying to Increment Progress

我試圖通過單擊鼠標區域在進度條上顯示增量更改。 單擊鼠標區域后,下面的代碼編譯進度欄並將其值從0更改為0.25。 但是這種改變不是永久的。 我試圖將當前每次點擊增加0.25。 我知道我的代碼僅將每次點擊的值設置為正.25。 我不知如何在沒有全局變量的情況下增加進度條的變化。 我加入了過渡,以確保狀態更改是不可逆的,代碼仍然可以編譯並運行。 有兩個問題。

  1. 我的更改在可見的進度欄中不是永久的
  2. 我的增量不會增加總價值,它們是奇異的價值分配
ProgressBar{
    id: progressBar
    height: 20
    anchors.top: parent.top
    anchors.topMargin: 100
    anchors.horizontalCenter: parent.horizontalCenter
    opacity: 1
    value: 0
    states: State{
        name: "PressedAlso"
        when: mouseArea.pressed == true
        PropertyChanges{
            target: progressBar
            value: + 0.25
        }

    }

    transitions: Transition {
                from: ""; to: "PressedAlso"; reversible: false
    }
}

您的狀態PressedAlso表示:當按下鼠標按鈕時,該值為0.25。 否則,該值隱式為0。

如果要通過按鼠標按鈕增加0.25,可以在MouseArea使用onPressed屬性:

MouseArea {
  anchors.fill: parent
  id: mouseArea
  onPressed: progressBar.value += 1
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM