多窗口程序-在第二个窗口上创建按钮
C++ multi window program - Create button on second window
所以我找到了一些多窗口教程/课程,但似乎没有一个触及我的问题。
我想在第二个窗口上创建一个按钮,而不是另一个。
这是我的代码(不包括不必要的东西)
HWND hWindow1;
HWND hWindow2;
HINSTANCE hInstGlobal;
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
...WindowClass / RegisterClass...
//HWND hWindow1;
hWindow1 = CreateWindow("WinProg", "Window_1", WS_OVERLAPPEDWINDOW,
0, 0, 800, 600, NULL, NULL, hInstance, NULL);
//HWND hWindow2;
hWindow2 = CreateWindow("WinProg", "Window_2", WS_OVERLAPPEDWINDOW,
150, 50, 800, 600, NULL, NULL, hInstance, NULL);
...show/update windows...
...MessageLoop...
}
LRESULT WINAPI WinProc(HWND hWnd, UINT uiMessage, WPARAM wParam, LPARAM lParam)
{
switch(uiMessage)
{
case WM_CREATE:
{
HWND hButton;
hButton = CreateWindow("BUTTON", "PUSH ME NOW",
WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
50, 200, 150, 20,
hWindow2, (HMENU) 1,
hInstGlobal, NULL);
}
此代码不能创建任何按钮。
对于我的调试,我可以通过将WM_CREATE下的hWindow2更改为hWindow1来在第一个窗口上创建一个按钮。但那不是我想要的。然而,我可以通过将其保留为hWindow2来创建第二个窗口上的按钮,但将消息事件更改为WM_PAINT…
我不明白这是怎么回事,我宁愿不解决这个问题。
任何帮助都将非常感激。谢谢。
这不是在hWindow2
上创建按钮的明显方式吗?
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
...WindowClass / RegisterClass...
//HWND hWindow1;
hWindow1 = CreateWindow("WinProg", "Window_1", WS_OVERLAPPEDWINDOW,
0, 0, 800, 600, NULL, NULL, hInstance, NULL);
//HWND hWindow2;
hWindow2 = CreateWindow("WinProg", "Window_2", WS_OVERLAPPEDWINDOW,
150, 50, 800, 600, NULL, NULL, hInstance, NULL);
HWND hButton = CreateWindow("BUTTON", "PUSH ME NOW",
WS_CHILD | WS_VISIBLE | BS_PUSHBUTTON,
50, 200, 150, 20,
hWindow2, (HMENU) 1,
hInstGlobal, NULL);
...show/update windows...
...MessageLoop...
}
LRESULT WINAPI WinProc(HWND hWnd, UINT uiMessage, WPARAM wParam, LPARAM lParam)
{
switch(uiMessage)
{
...
}
}
真的不知道为什么你试图创建的代码是由hWindow1
和hWindow2
正在使用的按钮。
相关文章:
- 如何为使用创建窗口创建的窗口创建自定义背景颜色
- 窗口 :创建仅具有对我的进程的权限的目录 (C++)
- DXGI_ERROR_INVALID_CALL为核心窗口创建交换链时
- 视觉C++窗口创建失败
- 从 WinAPI 窗口创建控制台窗口
- 窗口创建错误 - 可能是事件处理
- Qt:当主窗口被模式QDialog阻止时,如何聚焦从主窗口创建的无模式QDialog
- Visual Studio 2012应用程序窗口创建/调整大小与VS2008窗口创建不同?为什么?
- C++/SFML窗口创建失败
- 窗口创建问题
- 使用创建窗口创建 MDI 子窗口
- MDI 子窗口创建失败
- Win32窗口创建失败
- 挂钩窗口创建;挂钩未被触发
- 如何使用'C'或'C++'为窗口创建独立的程序或应用程序
- 调用glfwWindowHint()后,GLFW窗口创建失败
- c++窗口创建/ SDL
- Qt从我的主窗口创建新窗口
- 窗口创建失败-LoadFrame(IDR_MAINFRAME)使C++失败
- Visual Studio和SDL2窗口创建失败