ImageVerifierCode 换一换
格式:DOCX , 页数:8 ,大小:16.30KB ,
资源ID:19857987      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/19857987.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(OWNDRAW文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

OWNDRAW文档格式.docx

1、OwnDraw) ; MSG msg ; HWND hwnd ; WNDCLASS wndclass ; hInst = hInstance ; wndclass.style = CS_HREDRAW | CS_VREDRAW ; wndclass.lpfnWndProc = WndProc ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = 0 ; wndclass.hInstance = hInstance ; wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION) ; wndclass.hCurs

2、or = LoadCursor (NULL, IDC_ARROW) ; wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ; wndclass.lpszMenuName = szAppName ; wndclass.lpszClassName = szAppName ; if (!RegisterClass (&wndclass) MessageBox (NULL, TEXT (This program requires Windows NT!), szAppName, MB_ICONERROR) ; return 0

3、 ; hwnd = CreateWindow (szAppName, TEXT (Owner-Draw Button Demo WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL) ; ShowWindow (hwnd, iCmdShow) ; UpdateWindow (hwnd) ; while (GetMessage (&msg, NULL, 0, 0) TranslateMessage (&msg) ; DispatchMessage (& return msg.wParam ;v

4、oid Triangle (HDC hdc, POINT pt) SelectObject (hdc, GetStockObject (BLACK_BRUSH) ; Polygon (hdc, pt, 3) ; SelectObject (hdc, GetStockObject (WHITE_BRUSH) ;LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) static HWND hwndSmaller, hwndLarger ; static int cxClient, cyCli

5、ent, cxChar, cyChar ; int cx, cy ; LPDRAWITEMSTRUCT pdis ; POINT pt3 ; RECT rc ; switch (message) case WM_CREATE : cxChar = LOWORD (GetDialogBaseUnits () ; cyChar = HIWORD (GetDialogBaseUnits () ; / Create the owner-draw pushbuttons hwndSmaller = CreateWindow (TEXT (button), TEXT ( WS_CHILD | WS_VIS

6、IBLE | BS_OWNERDRAW, 0, 0, BTN_WIDTH, BTN_HEIGHT, hwnd, (HMENU) ID_SMALLER, hInst, NULL) ; hwndLarger = CreateWindow (TEXT ( hwnd, (HMENU) ID_LARGER, hInst, NULL) ; case WM_SIZE : cxClient = LOWORD (lParam) ; cyClient = HIWORD (lParam) ; / Move the buttons to the new center MoveWindow (hwndSmaller,

7、cxClient / 2 - 3 * BTN_WIDTH / 2, cyClient / 2 - BTN_HEIGHT / 2, BTN_WIDTH, BTN_HEIGHT, TRUE) ; MoveWindow (hwndLarger, cxClient / 2 + BTN_WIDTH / 2, case WM_COMMAND : GetWindowRect (hwnd, &rc) ; / Make the window 10% smaller or larger switch (wParam) case ID_SMALLER : rc.left += cxClient / 20 ; rc.

8、right -= cxClient / 20 ; rc.top += cyClient / 20 ; rc.bottom -= cyClient / 20 ; break ; case ID_LARGER : rc.left -= cxClient / 20 ; rc.right += cxClient / 20 ; rc.top -= cyClient / 20 ; rc.bottom += cyClient / 20 ; MoveWindow (hwnd, rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top, TRUE) ; ca

9、se WM_DRAWITEM : pdis = (LPDRAWITEMSTRUCT) lParam ; / Fill area with white and frame it black FillRect (pdis-hDC, &pdis-rcItem, (HBRUSH) GetStockObject (WHITE_BRUSH) ; FrameRect (pdis- (HBRUSH) GetStockObject (BLACK_BRUSH) ; / Draw inward and outward black triangles cx = pdis-rcItem.right - pdis-rcI

10、tem.left ; cy = pdis-rcItem.bottom - pdis-rcItem.top ; switch (pdis-CtlID) pt0.x = 3 * cx / 8 ; pt0.y = 1 * cy / 8 ; pt1.x = 5 * cx / 8 ; pt1.y = 1 * cy / 8 ; pt2.x = 4 * cx / 8 ; pt2.y = 3 * cy / 8 ; Triangle (pdis-hDC, pt) ; pt0.x = 7 * cx / 8 ; pt0.y = 3 * cy / 8 ; pt1.x = 7 * cx / 8 ; pt1.y = 5

11、* cy / 8 ; pt2.x = 5 * cx / 8 ; pt2.y = 4 * cy / 8 ; pt0.x = 5 * cx / 8 ; pt0.y = 7 * cy / 8 ; pt1.x = 3 * cx / 8 ; pt1.y = 7 * cy / 8 ; pt2.y = 5 * cy / 8 ; pt0.x = 1 * cx / 8 ; pt0.y = 5 * cy / 8 ; pt1.x = 1 * cx / 8 ; pt1.y = 3 * cy / 8 ; pt2.x = 3 * cx / 8 ; pt2.y = 1 * cy / 8 ; pt2.x = 7 * cx /

12、 8 ; pt2.y = 7 * cy / 8 ; pt2.x = 1 * cx / 8 ; / Invert the rectangle if the button is selected if (pdis-itemState & ODS_SELECTED) InvertRect (pdis-rcItem) ; / Draw a focus rectangle if the button has the focus ODS_FOCUS) pdis-rcItem.left += cx / 16 ;rcItem.top += cy / 16 ;rcItem.right -= cx / 16 ;rcItem.bottom -= cy / 16 ; DrawFocusRect (pdis- case WM_DESTROY : PostQuitMessage (0) ; return DefWindowProc (hwnd, message, wParam, lParam) ;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1