如何在创建窗口后调整特定窗口的大小?

4
我想在创建游戏窗口(DirectX)后调整其大小,游戏窗口允许通过鼠标从边缘进行调整大小。但是我想自动化这个过程,因为使用鼠标很困难:在边缘处光标是不可见的,我必须先取消窗口的焦点才能通过单击边缘进行调整大小。需要明确的是:我没有此游戏的源代码,因此必须制作自己的程序来完成此操作。
如何完成这个过程?或者更好的问题是:是否已经存在可以完成这些操作的程序?
1个回答

9

可能会遇到问题,但最好先尝试简单的方法。

根据您的标签为C ++,我认为您正在寻找WinAPI解决方案。请尝试以下方法:


int width = 640;
int height = 480;

HWND handle = ::FindWindow(NULL, _T("Window title"));

::SetWindowPos(handle, 0, 0, 0, width, height, SWP_NOMOVE | SWP_NOOWNERZORDER | SWP_NOZORDER);

完美运行!顺便问一下,那些::标记是干什么用的?没有它们也可以工作。 - Newbie
2
它们用于在本地定义的符号和全局符号之间进行选择。例如,如果您有一个具有完全相同名称“FindWindow”的方法的类,则没有其他方法可以调用WinAPI函数:class MyClass { void FindWindow() { blah-blah } void func1() { FindWindow() <-- 调用本地函数} void func2() { ::FindWindow() <-- 调用WinAPI } } - yurymik

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接