美文网首页
qml窗口拖拽闪烁

qml窗口拖拽闪烁

作者: 羽木南翎 | 来源:发表于2018-11-08 21:58 被阅读0次

    以下是右边框示例

     MouseArea {
            id: mouseArea
            acceptedButtons: Qt.LeftButton //只处理鼠标左键
            property point clickPos: "0,0"
            cursorShape: Qt.SizeHorCursor
            anchors.top:parent.top
            anchors.right:parent.right
            anchors.topMargin: 30
            width: 10
            height: parent.height
            anchors.rightMargin: 0
            //hoverEnabled: true
            onPressed: { //接收鼠标按下事件
                clickPos  = Qt.point(mouse.x,mouse.y)
            }
            onPositionChanged: { //鼠标按下后改变位置
                //鼠标偏移量
                var delta = Qt.point(mouse.x-clickPos1.x, mouse.y-clickPos1.y)
                //如果mainwindow继承自QWidget,用setPos
                mainWindow.width = mainWindow.width + mouse.x-clickPos1.x
            }
        }
    

    用以上代码进行拉伸的时候窗口会出现闪烁现象,经过一番仔细的搜索,在cpp文件中加入下面代码就可以解决

    QCoreApplication::setAttribute(Qt::AA_UseSoftwareOpenGL);
    

    相关文章

      网友评论

          本文标题:qml窗口拖拽闪烁

          本文链接:https://www.haomeiwen.com/subject/igugxqtx.html