窗口

窗口Window 控制了应用程序窗口的大小、标题等属性。

创建窗口

窗口是由运行器自动创建的,窗口的属性在运行器选项中指定:

// 运行器选项
Settings s;
// 设置窗口标题
s.window.title = "Hello World";
// 设置窗口大小
s.window.width = 640;
s.window.height = 480;

窗口设置的完整定义为

struct WindowConfig
{
    uint32_t width  = 640;            ///< 窗口宽度
    uint32_t height = 480;            ///< 窗口高度
    String   title  = "Kiwano Game";  ///< 窗口标题
    Icon     icon;                    ///< 窗口图标
    bool     resizable  = false;      ///< 窗口大小可调整
    bool     fullscreen = false;      ///< 窗口全屏
};

窗口图标

在Visual Studio中将ico类型的图标资源添加到程序中,然后使用资源ID设置图标

// 假设 ico 图片导入后的资源ID为 IDI_ICON1
Settings s;
s.window.icon = Icon(IDI_ICON1);

获取主窗口

在代码的任意位置,可以通过 应用程序Application 获取主窗口

RefPtr<Window> window = Application::GetInstance().GetWindow();

常用方法

  • 获取窗口属性
// 获取窗口标题
String title = window->GetTitle();
// 获取窗口宽度
uint32_t width = window->GetWidth();
// 获取窗口高度
uint32_t height = window->GetHeight();
// 获取窗口大小
Size size = window->GetSize();
// 获取窗口句柄,在 win32 下 WindowHandle 为 HWND 类型
WindowHandle handle = window->GetHandle();
  • 修改窗口属性
// 修改窗口标题
window->GetTitle("New Title");
// 修改窗口大小
window->Resize(600, 400);
// 修改鼠标类型为小手
window->SetCursor(CursorType::Hand);

results matching ""

    No results matching ""