强制按钮在功能完成之前启用更改

时间:2018-09-18 12:44:55

标签: multithreading qt qml

我有一个qml图片按钮。如果按下按钮,则从C ++侧开始长时间操作。我希望单击按钮时禁用它,它们在功能完成后启用它。

Image {
    id:searchimgbtn
    source: "/Images/Search.png"
    height: parent.height
    width: dp(32)
     fillMode: Image.PreserveAspectFit
     enabled: isvalF
     opacity: isvalF ? 1 :0.1

     MouseArea {
         anchors.fill: parent
         hoverEnabled: true

         onClicked: {

            disablesearchbutton();
             getcbsvalue();


         }

         onPressed:{
             searchimgbtn.scale=1.08
      //       searchimgbtn.opacity=0.3
       //      opacity: enabled ? 1 :0.1
         }
         onReleased: {
             searchimgbtn.scale=1
       //      searchimgbtn.opacity=1
       //      opacity: enabled ? 1 :0.1

         }


     }
}

1 个答案:

答案 0 :(得分:0)

您需要将长期运行的作业分支到另一个进程/线程中,以便UI-Process不会被阻塞并可以呈现。 查看QProcessQThread,我用它来ping东西。

{{1}}