![](/img/trans.png)
[英]How to hide Close,Minimize and Maximize buttons and the surrounding edges in awesomium application?
[英]How do I draw the close, minimize, and maximize buttons in Qt?
我创建了一个this->setWindowFlags(Qt::FramelessWindowHint);
因此没有标题栏。 因此,我正在执行自己的。 我想知道,但是,在继续之前,是否存在一种以本机OS方式添加关闭,最小化和最大化按钮的标准方法(即,在Windows上看起来应该像Windows关闭按钮,对于osx一样)和linux)。
QStyle
采用了大量基于OS风格的标准图标。 您可以从当前的操作系统样式中获取此图标,然后自行绘制。
这是一个简单的实现方式,仅供参考。
class TitleBar : public QWidget
{
Q_OBJECT
public:
explicit TitleBar(QWidget *parent = 0)
:QWidget(parent)
{
QStyle *style = qApp->style();
QIcon closeIcon = style->standardIcon(QStyle::SP_TitleBarCloseButton);
QIcon maxIcon = style->standardIcon(QStyle::SP_TitleBarMaxButton);
QIcon minIcon = style->standardIcon(QStyle::SP_TitleBarMinButton);
QPushButton *min = new QPushButton(this);
QPushButton *max = new QPushButton(this);
QPushButton *close = new QPushButton(this);
min->setIcon(minIcon);
max->setIcon(maxIcon);
close->setIcon(closeIcon);
QHBoxLayout *layout = new QHBoxLayout(this);
layout->setSpacing(0);
layout->addWidget(min);
layout->addWidget(max);
layout->addWidget(close);
setLayout(layout);
}
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.