Qt设置窗口是否置顶

QQ截图有个钉在桌面上的功能,其实就是将图片给绘制在了窗口上并置顶放置 的操作

void onStateChanged(int state)
{
    if (state == Qt::Unchecked)
    {
        // 未勾选时不置顶;
        this->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowMinimizeButtonHint);
        // 如果当前窗口不可见,则显示出来;
        if (!this->isVisible())
        {
            setVisible(true);
        }
    }
    else if (state == Qt::Checked)
    {
        // 勾选时置顶;
        this->setWindowFlags(Qt::FramelessWindowHint | Qt::WindowMinimizeButtonHint | Qt::WindowStaysOnTopHint);
        // 如果当前窗口不可见,则显示出来;
        if (!this->isVisible())
        {
            setVisible(true);
        }
    }
}

 

你可能感兴趣的:(Qt基础)