愿闻其详

随心所写,姑妄听之

0%

wguiLib 教程

1. 基本窗口的建立

    声明一个窗口基类WindowBase w,对 w 调用show函数即可让窗口可视化,为了维持窗口显示并开启消息循环,需要调用programExe函数。

1
2
3
WindowBase w;
w.show(argc); // show(1)也可以
return programExe(); // 开启消息循环

2.绘图事

    要实现绘图事件首先得声明一个子类,重载其paintEvent()函数。

    例如,实现一个在窗口画圆的例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "wguiLib.h"

class TestWindow : public WindowBase
{
public:
TestWindow();
~TestWindow() noexcept;
protected:
virtual void paintEvent() override; // 重载paintEvent事件
};

..... // 省略构造函数和析构函数

void TestWindow::paintEvent()
{
Painter p(this); // 创建一个Painter对象(注意:Painter类只能在paintEvent内使用)
p.drawEllipse(0, 0, 100, 100); // 用这个画家画一个矩形的内接圆
// 注意x,y是矩形的左上角坐标,不是圆心的
}