Visindigo::Widgets::BorderFrame Class
class Visindigo::Widgets::BorderFrame这是个神奇的类,在Windows上的某些情况下特别有用. 详情...
| 头文件: | #include <BorderFrame> |
| 自以下版本: | Visindigo 0.14.0 |
| 被继承: |
公开成员函数
(自 Visindigo 0.14.0 引入) | BorderFrame(QWidget *parent = nullptr) |
(自 Visindigo 0.14.0 引入) virtual | ~BorderFrame() |
(自 Visindigo 0.14.0 引入) virtual void | paintEvent(QPaintEvent *event) override |
详细说明
这是个神奇的类:它本质是QFrame,未提供任何其他功能,它只做一件事, 默认画一个现代边框(在Windows11上看起来像WinUI3中的边框)。
这在Windows(尤其是Windows11)上特别有用,因为在Qt中缺少一种能够模仿 WinUI3中现代边框的组件,而Qt在Windows11上代理绘制的某些窗口实际上 正好与这种边框类似,因此这个类就被设计出来了,以满足在Windows11上实现现代边框的需求。
你可以如同使用QFrame一样使用它,但如果你也需要重载paintEvent,记得先 调用Visindigo::Widgets::BorderFrame::paintEvent来绘制边框,否则你就只能得到一个普通的QFrame了。
成员函数文档
[since Visindigo 0.14.0] BorderFrame::BorderFrame(QWidget *parent = nullptr)
parent 父窗口
BorderFrame的构造函数。
这个function 从 Visindigo 0.14.0 开始支持。
[virtual noexcept, since Visindigo 0.14.0] BorderFrame::~BorderFrame()
BorderFrame的析构函数。
这个function 从 Visindigo 0.14.0 开始支持。
[override virtual, since Visindigo 0.14.0] void BorderFrame::paintEvent(QPaintEvent *event)
event paint事件
由BorderFrame重载的paintEvent函数。任何继承此类并重载paintEvent 的子类在重载的paintEvent中都应该调用此函数来绘制边框,否则就只能得到一个普通的QFrame了。
这个function 从 Visindigo 0.14.0 开始支持。