内容发布更新时间 : 2025/1/6 17:24:18星期一 下面是文章的全部内容请认真阅读。
Visual studio C++ MFC 简单绘图程序-绘制国际象棋棋盘 功能:由Button将绘制的棋盘显示于Picture Control中 一、建立一个MFC功程序:
1. 启动Visual Studio C++;
2. 新建一个MFC对话框项目:New|Project|MFCAplication; 3. Name中输入mfc_pic,然后点|OK;
4. 在Welcome to the MFC Application窗口:点next;
5. 在Application Type窗口:点dialoge base;然后点Finish;出现如图所示的窗口;
6. 删除窗口中的TODO?文本对象;
二、向窗口添加一个Picture Control和一个Button共二个对象:
1. 修改Button的Caption属性为“绘制棋盘”,ID属性为IDC_BUTTON_DRAR; 2. 修改Picture Control的ID属性为IDC_PIC,建立关联变量名为picD; 3. 双击Button,添加如下代码:
voidCmfcpicDlg::OnBnClickedButton1() {
CRect r;
intw,h,dxy,i,j;
CWnd *pic = GetDlgItem(IDC_PIC); //取Picture的长宽信息 GetDlgItem(IDC_PIC)->GetWindowRect(&r); w=r.Width(); h=r.Height();
dxy=(w
pdc->Rectangle(r); CBrushmyBrush;
pdc->Rectangle(0,0,8*dxy,8*dxy); //绘制外框线 myBrush.CreateSolidBrush(RGB(0,0,0)); for(i=0;i<8;i++){ for(j=i%2;j<8;j+=2){ r.left=i*dxy; r.top=j*dxy; r.right=(i+1)*dxy; r.bottom=(j+1)*dxy;
} }
}
pdc->FillRect(r,&myBrush); //绘制黑方格
4. 为使图形美观,初始化图形大小为8的倍数,只需在BOOL Cmfc_picDlg::OnInitDialog()
函数的定义体内“// TODO: Add extra initialization here”处加入如下代码即可; GetDlgItem(IDC_PIC)->MoveWindow(25,25,240,240,true);
三、运行程序:按F5运行程序,得到如图所示的结果。