WinUI - 起動時のウィンドウサイズを指定する

C++ で WinUI 3 ライブラリを使う

アプリを起動したときのウィンドウサイズは、MainWindow のコンストラクタでAppWindow::Resize を使って指定できます。

#include <winrt/Microsoft.UI.Interop.h>
#include <winrt/Microsoft.UI.Windowing.h>

MainWindow::MainWindow()
{
    InitializeComponent();
    auto hWnd = stuff::getHwnd(this);
    auto wndId = Microsoft::UI::GetWindowIdFromWindow(hWnd);
    auto appWnd = Microsoft::UI::Windowing::AppWindow::GetFromWindowId(wndId);
    appWnd.Resize(Windows::Graphics::SizeInt32{ 1000, 600 });
}

MainWindow から HWND → WindowId → AppWindow と変換します。

MainWindow から HWND に変換する getHwnd 関数は、ウインドウハンドル (HWND) を取得する で説明しています。

参考

WinUI 3 with C++ 入門 - ビリヤードが好きなプログラマー

GetWindowIdFromWindow - Windows App SDK | Microsoft Learn

AppWindow Class (Microsoft.UI.Windowing) - Windows App SDK | Microsoft Learn