📄 subject_28195.htm
字号:
<p>
序号:28195 发表者:草街 发表日期:2003-01-18 23:21:02
<br>主题:关于API的问题
<br>内容:程序通过了编译,但在生成OBJ时有错,请帮忙看看到底错出在哪里?<BR>主要是调用API,建一个窗口,并根据鼠标动作来调用对话框等 <BR>#include"windows.h" <BR>#include"stdio.h" <BR>//#include<resource.h> <BR>LRESULT CALLBACK MyProc(HWND hWnd,UINT Msg,WPARAM wParam, <BR>LPARAM lParam); <BR>int WINAPI WinMain( <BR> HINSTANCE hInstance, // handle to current instance <BR> HINSTANCE hPrevInstance, // handle to previous instance <BR> LPSTR lpCmdLine, // pointer to command line <BR> int nCmdShow // show state of window <BR>){ <BR>WNDCLASS wndClass; <BR>wndClass.style=0; <BR>wndClass.lpfnWndProc=(WNDPROC)MyProc; <BR>wndClass.cbClsExtra=0; <BR>wndClass.cbWndExtra=0; <BR>wndClass.hInstance=hInstance; <BR>// wndClass.hIcon=LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON)); <BR>// wndClass.hCursor=LoadCursor(hInstance,MAKEINTRESOURCE(IDI_CURSOR1)); <BR>LOGBRUSH lgbr; <BR>lgbr.lbStyle=BS_SOLID; <BR>lgbr.lbColor=RGB(0,192,192); <BR>lgbr.lbHatch=0; <BR>wndClass.hbrBackground=CreateBrushIndirect(&lgbr); <BR>wndClass.lpszMenuName=NULL; <BR>wndClass.lpszClassName="MyProc"; <BR><BR>RegisterClass(&wndClass); <BR><BR>HWND hWnd; <BR>hWnd=CreateWindow("MyProc","编程",WS_OVERLAPPEDWINDOW&~WS_MINIMIZEBOX, <BR> CW_USEDEFAULT,0, CW_USEDEFAULT,0,NULL,NULL,hInstance,NULL); <BR>MSG msg; <BR>while(GetMessage(&msg,NULL,1,2)){ <BR>TranslateMessage(&msg); <BR>DispatchMessage(&msg); <BR>} <BR>return true; <BR>} <BR>LRESULT CALLBACK MyProc(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam){ <BR>switch(Msg){ <BR>case WM_CHAR: <BR>char str[10]; <BR>sprintf(str,"char is %c",wParam); <BR>MessageBox(hWnd,str,"MyProc",MB_OKCANCEL); <BR>break; <BR>case WM_LBUTTONDOWN: <BR>MessageBox(hWnd,"mouseclick","MyProc",MB_OK); <BR> HDC hDC; <BR>hDC=GetWindowDC(hWnd); <BR>TextOut(hDC,20,100,"你信不信?",strlen("你信不信?")); <BR>ReleaseDC(hWnd,hDC); <BR>break; <BR>case WM_COMMAND: <BR>; <BR>break; <BR>case WM_CLOSE: <BR>if(IDOK==MessageBox(NULL,"你要走了?","喂,喂!",MB_OKCANCEL)){ <BR>DestroyWindow(hWnd); <BR>} <BR>break; <BR>case WM_MOVING: <BR>RedrawWindow(hWnd,NULL,NULL,RDW_ERASE|RDW_INVALIDATE|RDW_ERASENOW); <BR>break; <BR>case WM_PAINT: <BR>PAINTSTRUCT ps; <BR>ps.fErase=0; <BR>hDC=BeginPaint(hWnd,&ps); <BR>TextOut(hDC,20,20,"知识",strlen("知识")); <BR>EndPaint(hWnd,&ps); <BR>break; <BR>case WM_DESTROY: <BR>PostQuitMessage(0); <BR>break; <BR>default: <BR>return(DefWindowProc(hWnd,Msg,wParam,lParam)); <BR>} <BR>return (0); <BR>} <BR><BR><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>回复者:xiongli 回复日期:2003-01-19 00:58:32
<br>内容:我运行一切正常啊<BR>但是你没有show窗口,所以什么都没有<BR>如果你还是link通不过,把link里面的console改成windows就可以了
<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 + -