入门教程

Window 窗口类

Window 类封装了有关窗口操作的一些函数,例如修改窗口大小等等。

Window 类的常用函数如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
// 修改窗口大小为 1000x800
Window::setSize(1000, 800);
// 修改窗口标题为 Hello
Window::setTitle("Hello");
// 设置鼠标样式为“手指针”
Window::setCursor(Window::Cursor::Hand);
// 获取窗口宽度
float width = Window::getWidth();
// 获取窗口高度
float height = Window::getHeight();
// 获取窗口大小
Size size = Window::getSize();
// 获取窗口标题
String title = Window::getTitle();

Window 类除了可以设置窗口大小、标题外,还可以设置窗口图标,需要先将 ico 格式图标加入到 VS 资源中,然后调用下面的代码:

1
2
// 设置窗口图标为资源 IDR_ICON1 所在的图标
Window::setIcon(IDR_ICON1);

Window 类还封装了弹窗提示的函数,类似于 MessageBox:

1
2
3
4
5
6
// 弹出一个提示窗口
Window::info("这是一条提示", "提示标题");
// 弹出一个警告窗口
Window::warning("这是一条警告", "警告标题");
// 弹出一个错误窗口
Window::error("这是一条错误", "错误标题");

Window 类还可以设置自定义鼠标指针,例如将一个 Sprite 精灵作为指针渲染

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// 假设有 sprite 对象,把它作为指针
Window::setCustomCursor(sprite);

// 可以根据不同的指针类型渲染不同内容
Window::setCustomCursor([](Window::Cursor cursor) -> Node* {
if (cursor == Window::Cursor::Normal) {
// 普通指针
return gcnew Sprite("cursor_normal.png");
}
if (cursor == Window::Cursor::Hand) {
// 手掌指针
return gcnew Sprite("cursor_hand.png");
}
// 其他情况使用系统默认指针
return nullptr;
});