qt中的QWidget窗口支持窗体绘制,但是不支持窗口标题栏绘制,想要美观的界面,还需要自己去定制,下面我就介绍一种定制窗体的方法
一个窗口无非就3部分,标题栏、窗体和状态栏,接下来我定制的窗口没有状态栏,如果自己想加状态栏的话,照着这个模式自己也可以添加,说白了,窗口定制就是把完整的窗口分3部分定制,而每个部分又都是一个qt窗口
定制窗口效果图如下,根据个人喜好,自己也可以定制不同的效果
如图1所示,这个窗口包含两部分,标题栏和窗体,这两部分其实分别是一个没有标题栏的QWidget,接下来我分别介绍下这两部分
标题栏
构造函数代码如下
1 setAutoFillBackground(true);//自动填充背景色,防止继承父窗口背景色 2 3 setStyleSheet(QStringLiteral("background:blue;"));//背景色 4 5 setFixedHeight(30);//设置高度 看个人喜好 可以做微调 6 7 _p->minimize = new QToolButton(this); 8 9 _p->maximize = new QToolButton(this); 10 11 _p->close = new QToolButton(this);