用vc6.0编码一个单文档应用程序 SDIDraw,为程序添加主菜单“我的莱单”,并添加“显示文本”和“画图”两个莱单项。编写上述两个菜单项的命令处理西数,分别在客户区显示一行文本或画一个圆。当显示文本后,显示“显示文本”菜单项处于不可用状态;当画一个圆后,“画图”菜单项处于不可用状态。
时间: 2023-05-29 15:05:23 浏览: 68
步骤:
1. 新建单文档应用程序 SDIDraw。
2. 在资源视图中右键单击菜单资源,选择“添加菜单”,输入“我的菜单”,并添加“显示文本”和“画图”两个菜单项。
3. 双击菜单资源,进入菜单编辑器,在“显示文本”菜单项上右键单击,选择“添加事件处理程序”,输入“OnShowText”,单击“添加”按钮。
4. 在SDIDrawView.h中添加以下成员函数声明:
void OnShowText();
void OnDrawCircle();
5. 在SDIDrawView.cpp中添加以下成员函数定义:
void CSDIDrawView::OnShowText()
{
CDC* pDC = GetDC();
pDC->TextOut(50, 50, _T("Hello, world!"));
ReleaseDC(pDC);
GetMenu()->EnableMenuItem(ID_MYMENU_SHOWTEXT, MF_DISABLED | MF_GRAYED);
}
void CSDIDrawView::OnDrawCircle()
{
CDC* pDC = GetDC();
pDC->Ellipse(100, 100, 200, 200);
ReleaseDC(pDC);
GetMenu()->EnableMenuItem(ID_MYMENU_DRAWCIRCLE, MF_DISABLED | MF_GRAYED);
}
6. 在SDIDrawView.cpp的消息映射中添加以下代码:
ON_COMMAND(ID_MYMENU_SHOWTEXT, OnShowText)
ON_COMMAND(ID_MYMENU_DRAWCIRCLE, OnDrawCircle)
7. 运行程序,在菜单栏中选择“我的菜单”下的“显示文本”,将在客户区显示一行文本,并且“显示文本”菜单项将被禁用;选择“画图”将在客户区画出一个圆,并且“画图”菜单项将被禁用。