⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_58479.htm

📁 vc
💻 HTM
字号:
<p>
序号:58479 发表者:黄远文 发表日期:2003-11-01 12:38:19
<br>主题:一个简单的Win32程序调试错误问题(请教)
<br>内容:错误提示:<BR>D:\VC\basicapp\basicapp.cpp(28) : error C2440: '=' : cannot convert from 'void *' to 'struct HBRUSH__ *'<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Conversion from 'void*' to pointer to non-'void' requires an explicit cast<BR>Error executing cl.exe.<BR><BR>请问该如何修正程序呢?<BR><BR>源程序如下:<BR>// 一个基本的Win32应用程序<BR><BR>#include &lt;windows.h&gt;<BR><BR>LRESULT CALLBACK WndProc(HWND hWnd, UINT message, <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WPARAM wParam, LPARAM lParam);<BR><BR>int WINAPI WinMain(HINSTANCE hCurrentInst,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; HINSTANCE hPrevInstance, PSTR lpszCmdLine,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int nCmdShow)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;WNDCLASS wndClass;<BR>&nbsp;&nbsp;&nbsp;&nbsp;HWND hWnd;<BR>&nbsp;&nbsp;&nbsp;&nbsp;MSG msg;<BR>&nbsp;&nbsp;&nbsp;&nbsp;UINT width;<BR>&nbsp;&nbsp;&nbsp;&nbsp;UINT height;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;// 初始化窗口类所需的值<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.style = CS_HREDRAW | CS_VREDRAW;<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.lpfnWndProc = WndProc;<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.cbClsExtra = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.cbWndExtra = 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.hInstance = hCurrentInst;<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.hCursor = LoadCursor(NULL, IDC_ARROW);<BR><BR>// 出错行!<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.hbrBackground = GetStockObject(WHITE_BRUSH);<BR>// 出错行!<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.lpszMenuName = NULL;<BR>&nbsp;&nbsp;&nbsp;&nbsp;wndClass.lpszClassName = &#34;Basic App&#34;;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;RegisterClass(&amp;wndClass);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;width = GetSystemMetrics(SM_CXSCREEN) / 2;<BR>&nbsp;&nbsp;&nbsp;&nbsp;height = GetSystemMetrics(SM_CYSCREEN) / 2;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;hWnd = CreateWindow(<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#34;BasicApp&#34;,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Window的类名<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#34;Basic Application&#34;,&nbsp;&nbsp;&nbsp;&nbsp;// 标题栏文本<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;WS_OVERLAPPEDWINDOW,&nbsp;&nbsp;&nbsp;&nbsp;// 窗口样式<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// X 坐标<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;10,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// Y坐标<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;width,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 宽度<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;height,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;// 高度<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hCurrentInst,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;ShowWindow(hWnd, nCmdShow);<BR>&nbsp;&nbsp;&nbsp;&nbsp;UpdateWindow(hWnd);<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;while (GetMessage(&amp;msg, NULL, 0, 0))<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TranslateMessage(&amp;msg);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;DispatchMessage(&amp;msg);<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;&nbsp;return msg.wParam;<BR>}<BR><BR>LRESULT CALLBACK WndProc(HWND hWnd, UINT message,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; WPARAM wParam, LPARAM lParam)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;HDC hDC;<BR>&nbsp;&nbsp;&nbsp;&nbsp;PAINTSTRUCT paintStruct;<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;switch(message)<BR>&nbsp;&nbsp;&nbsp;&nbsp;{<BR>&nbsp;&nbsp;&nbsp;&nbsp;case WM_PAINT:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hDC = BeginPaint(hWnd, &amp;paintStruct);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TextOut(hDC, 10, 10, &#34;This is a test.&#34;, 15);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EndPaint(hWnd, &amp;paintStruct);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;case WM_LBUTTONDOWN:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MessageBox(hWnd, &#34;Got mouse click!&#34;,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#34;Basic Application&#34;,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MB_ICONEXCLAMATION | MB_OK);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;case WM_DESTROY:<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PostQuitMessage(0);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 0;<BR>&nbsp;&nbsp;&nbsp;&nbsp;}<BR><BR>&nbsp;&nbsp;&nbsp;&nbsp;return DefWindowProc(hWnd, message, wParam, lParam);<BR>}
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:赵斗斗 回复日期:2003-11-01 12:47:49
<br>内容:wndClass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;~~~~~~~~~~~~<BR> 要进行强制类型转换
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:抽刀断水 回复日期:2003-11-01 13:17:48
<br>内容:谢谢!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -