第九章 9-2 单选按钮
来源:互联网 发布:超氧换血疗法 知乎 编辑:程序博客网 时间:2024/06/05 03:45
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ TCHAR *light[] = { TEXT("Red"),TEXT("Yellow"),TEXT("Green") }; HDC hdc; TEXTMETRIC tm; static int cxChar, cyChar; static HWND hctlWnd[3]; static HWND hwndGroup; static HWND hChecked; switch (message) { case WM_CREATE: hdc = GetDC(hWnd); SelectObject(hdc, GetStockObject(SYSTEM_FONT)); GetTextMetrics(hdc, &tm); cxChar = tm.tmAveCharWidth; cyChar = tm.tmHeight + tm.tmExternalLeading; ReleaseDC(hWnd, hdc); for (int i = 0; i < 3; i++) { hctlWnd[i] = CreateWindow(TEXT("button"), light[i], BS_RADIOBUTTON | WS_VISIBLE | WS_CHILD, cxChar / 2, cyChar*(2 * i + 2), 20 * cxChar, 7 * cyChar / 4, hWnd, (HMENU)(i + 1), hInst, NULL); } hwndGroup = CreateWindow(TEXT("button"), TEXT("light"), BS_GROUPBOX | WS_CHILD | WS_VISIBLE, cxChar / 4, 0, 21 * cxChar, 9 * cyChar, hWnd, 0, hInst, NULL); hChecked = hctlWnd[0]; SendMessage(hChecked, BM_SETCHECK, 1, 0L); break; case WM_COMMAND: //用hChecked句柄代替新的句柄进行交换 SendMessage(hChecked, BM_SETCHECK, 0, 0L); hChecked = (HWND)LOWORD(lParam); SendMessage(hChecked, BM_SETCHECK, 1, 0L); break; case WM_DESTROY: PostQuitMessage(0); break; default: return DefWindowProc(hWnd, message, wParam, lParam); } return 0;}
下面是效果图
0 0
- 第九章 9-2 单选按钮
- 单选按钮&复选按钮
- 第九章 9-1 子窗口控件:按钮类
- 第九章 单处理器调度
- 第13章、单选按钮列表
- 2复选框和单选按钮
- JRadioButton单选按钮代码2
- 单选按钮检测
- struts2单选按钮
- 单选按钮事件
- MFC单选按钮
- RadioButton单选按钮
- swing 单选按钮
- 单选按钮--转载
- 美化单选按钮
- 单选按钮
- 单选按钮分组
- 单选按钮
- 基本TCP socke编程
- 装饰器的应用 DecoratingStringHashMapper
- 【Java\杂谈】关于Eclipse导入Java项目后Tomcat的配置问题
- java的并行同步与异步简介
- 微信分享[WXApi sendReq:req]失败原因
- 第九章 9-2 单选按钮
- RTTI与反射
- 安卓Binder
- 装饰器模式
- 设计模式二之工厂方法
- SEH 进阶(2)
- 简单描述JSON跟JSONP的区别以及实战
- Java中的@interface以及method.invoke()
- 日志统计redis和mongo对比