在C-FREE(IDE)的对话框编辑器(菜单-->工具-->对话框编辑器)中,有几个基本的控件:
这一节练习单选和复选+编辑框。暂时先不把画图的功能放进去,而是用编辑框来显示我们对圆或矩形的选择和颜色的勾选:
主要的练习是:
1. 单选其实就是按钮,点击相当于按钮被点击;
2. 复选主要是得到它的状态,是否被勾选,我们加入头文件#include <windowsX.h>之后,用宏来简化SendMessage(1,2,3,4)的操作;
3. 由于我们会将复选控件当做窗口来控制,需要声明全局变量,并在initDialog中用GetDlgItem进行定义;
4. 将需要显示的文本放到编辑框中去显示。
HWND hCheck1,hCheck2; //复选1,2
// Add initializing code here
//
hCheck1 = GetDlgItem(hwnd, IDC_CHECK_RED);
hCheck2 = GetDlgItem(hwnd, IDC_CHECK_BLUE);
void Main_OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
{
int iRed, iBlue;
CHAR str[MAX_PATH] = {"Now Drawing "};
iRed = Button_GetCheck(hCheck1);
iBlue = Button_GetCheck(hCheck2);
switch(id)
{
case IDC_RADIO_RECT:
{
strcat(str,"Rectangle ");
if (iRed) strcat(str, "RED ");
if (iBlue) strcat (str, "BLUE ");
SetDlgItemText(hwnd, IDC_EDIT1, str);
}
break;
case IDC_RADIO_CIRCLE:
{
strcat(str,"Circle ");
if (iRed) strcat(str, "RED ");
if (iBlue) strcat (str, "BLUE ");
SetDlgItemText(hwnd, IDC_EDIT1, str);
}
break;
default:break;
}
}
这个练习后面和HDC绘图结合,实现画方画圆+颜色选择的功能;当前除去界面制作,程序编写本身应该控制在3分钟内完成。