Flutter 改变Windows窗口大小有一个比较多的插件,很多都是在main.dart中注入,这样势必影响多平台应用。至少,我们也应该遵守单一职责原理,既然是windows的问题,那么就在windows中进行解决。
通过阅读Flutter中windows平台的代码,调整程序窗口大小的比较简单,只需要两步:
第一步,读取屏幕工作区,然后传值给窗口创建函数
在main.cpp中,找到下列代码
FlutterWindow window(project);
Win32Window::Point origin(10, 10);
Win32Window::Size size(1280, 720);
if (!window.CreateAndShow(L"packing", origin, size)) {
return EXIT_FAILURE;
}
window.SetQuitOnClose(true);
修改为
FlutterWindow window(project);
//Win32Window::Point origin(10, 10);
//Win32Window::Size size(1280, 720);
RECT rt;
SystemParametersInfo(SPI_GETWORKAREA,0,(PVOID)&rt,0);
Win32Window::Point origin(rt.left, rt.top);
Win32Window::Size size(rt.right-rt.left, rt.bottom-rt.top);
if (!window.CreateAndShow(L"packing", origin, size)) {
return EX