我用 win32 api c++ 编写,并使用 mingw。 我想在运行时调整主窗口大小时调整按钮的大小。 这是我的代码:
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
// BLA BLA BLA
hwnd = CreateWindowEx(
WS_EX_CLIENTEDGE,
szClassName,
"Main Window",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
800, // width
1000, // height
HWND_DESKTOP,
NULL,
hInstance,
NULL
);
// BLA BLA BLA
}
LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{
switch(Message)
{
case WM_CREATE:
{
RECT rect;
GetClientRect(hwnd, &rect);
int width = rect.right - rect.left;
width = width-20;
HWND button = CreateWindowEx(BS_PUSHBUTTON, "BUTTON", "grafikon",
WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
10, 10, width, 25,
hwnd,
(HMENU)ID_BUTTON,
GetModuleHandle(NULL),
0);
// BLA BLA BLA
}
所以我想在运行时调整 BUTTON 的大小。我怎样才能做到这一点? 谢谢
最佳答案
我想你搜索 WM_SIZE MSDN:http://msdn.microsoft.com/en-us/library/windows/desktop/ms632646.aspx
关于c++ - Win32 c++ 在运行时调整 createwindow 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15603826/