QT窗口样式设置之 setWindowFlags

介绍

    在进行Gui开发时,往往不会使用windows原生的窗口,而是需要进行自定义,此时就需要去除原有的窗口,以及上面相关的关闭按键,最小化最大化按键等;

这里使用函数:void setWindowFlags ( Qt::WindowFlags type )


Qt::WindowFlags 标志位

标志位 功能
Qt::CustomizeWindowHint 自定义窗口标题栏
Qt::WindowTitleHint 显示窗口标题栏必须与 Qt::CustomizeWindowHint 一起使用才有效,否则窗口将有默认的标题栏
Qt::WindowSystemMenuHint 显示系统菜单
Qt::WindowMinimizeButtonHint 显示最小化按钮
Qt::WindowMaximizeButtonHint 显示最大化按钮
Qt::WindowMinMaxButtonsHint 显示最小化按钮和最大化按钮
Qt::WindowCloseButtonHint 显示关闭按钮
Qt::FrameWindowHint 没有边框的窗口
Qt::WindowStaysOnTopHint 总在最上面的窗口
Qt::Drawer 去掉窗口左上角的图标,右上角的最大化最小化按钮
Qt::SubWindow 窗口没有按钮但是有标题栏
Qt::Desktop 没有显示在桌面也没在任务栏。但是任务管理器中存在,可以进行查看关闭
Qt::SplashScreen 标题栏、按钮都没有,不能移动,且不能拖动缩放,且在下方任务栏中没有,只能再任务管理器中查看关闭
Qt::Tool 只有关闭按钮和标题名

例子

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    MainWindow w;
    w.setWindowFlags( Qt::CustomizeWindowHint | Qt::WindowTitleHint );
    w.show();

    return a.exec();
}

运行效果:
QT窗口样式设置之 setWindowFlags_第1张图片

你可能感兴趣的:(QT)