如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
作为一般窗口,控件具有通用的窗口属性,并且可以使用ShowWindows()和MoveWindows()等窗口管理函数来显示或隐藏控件、改变控件的位置、尺寸以及其它操作。应用程序窗口可调用函数SendMessage向特定的子窗口发送消息,例如用户单击圆按钮时,可调用SendMessage向该圆按钮发送BM_SETCHECK消息,为该按钮设置选中符号,其形式为:SendMessage(hwndRadioButton,BM_SETCHECK,1,0);使用对话框控件时,可调用SendDlgItemMessage向指定的对话框控件发送消息,其形式为:SendDlgItemMessage(hdlg,ID,message,wParam,lParam);1.EnableWindow函数(功能为激活或禁止窗口)3.SetWindowText(设置窗口的标题或文本)按钮控件按钮控件与应用程序之间的消息传递3.按钮控件示例LRESULTCALLBACKWndProc(......){intX=50,Y=30;//控件起始坐标switch(message){caseWM_CREATE://通过响应WM_CREATE消息创建控件子窗口hwndPush=CreateWindow(lpszClassName1,//按钮子窗口"这里是一个按钮,按我吧!",BS_PUSHBUTTON|WS_CHILD|WS_VISIBLE,X,Y,240,25,hwnd,(HMENU)IDB_PUSHBUTTON,hInst,NULL);hwndDefPush=CreateWindow(lpszClassName1,//默认按钮子窗口"这是缺省按钮,按下试试看!",BS_DEFPUSHBUTTON|WS_CHILD|WS_VISIBLE,X,Y+30,240,25,hwnd,(HMENU)IDB_DEFPUSHBUTTON,hInst,NULL);//创建自动圆按钮子窗口hwndAutoRadio=CreateWindow(lpszClassName1,"自动圆形按钮,看看有何区别?",BS_AUTORADIOBUTTON|WS_CHILD|WS_VISIBLE,X,Y+90,240,25,hwnd,(HMENU)IDB_AUTORADIOBUTTON,hInst,NULL);//创建自动复选框控件子窗口hwndAutoCheckBox=CreateWindow(lpszClassName1,"自动复选框,你会用吗?",BS_AUTOCHECKBOX|WS_CHILD|WS_VISIBLE,X,Y+150,240,25,hwnd,(HMENU)IDB_AUTOCHECKBOX,hInst,NULL);//处理控件消息caseWM_COMMAND:switch(LOWORD(wParam)){caseIDB_PUSHBUTTON://当用户单击按钮时,改变按钮文本SetWindowText(hwndPush,"你已按下了按钮!");break;caseIDB_DEFPUSHBUTTON://当用户单击按钮时,改变按钮文本SetWindowText(hwndDefPush,"按钮已被按下");break;caseIDB_RADIOBUTTON://当用户单击圆按钮时,设置按钮为选中状态SendMessage(hwndRadio,BM_SETCHECK,1,0);break;caseIDB_AUTORADIOBUTTON:break;caseIDB_CHECKBOX://根据复选框状态设置复选框if(nCheckBoxSt==0){SendMessage(hwndCheckBox,BM_SETCHECK,1,0);nCheckBoxSt=1;}else//如果当前为非选中状态,则设置为选中状态{SendMessage(hwndCheckBox,BM_SETCHECK,0,0);nCheckBoxSt=0;}break;caseIDB_AUTOCHECKBOX:break;caseIDB_GROUPBOX:break;}break;caseWM_DESTROY:PostQuitMessage(0);break;default:returnDefWindowProc(hwnd,message,wParam,lParam);}return0;}本程序运行时将在主窗口用户区的中央显示一个普通按钮,上面写有“启动一个对话框”,按下按钮弹