字体
第(4/5)页
关灯
   存书签 书架管理 返回目录
使用Windows 通用的颜色对话框,如图4-32 所示。

    CColorDialog 封装了字体对话框的使用,其使用方法与前面所述的模态通用对话框类似。

    图4-32 颜色对话框

    GridDemo 例程中使用颜色对话框的代码在CGridDemoView::OnSetColor()函数中。添加

    步骤如下。

    (1)添加CGridDemoView::OnSetColor()消息处理函数。

    CGridDemoView::OnSetColor()函数是“编辑|颜色”菜单的消息处理函数,对应ID 为

    ID_SET_COLOR。用户需要按照第3 章的讲解,在“编辑”顶层菜单中添加标题为“颜色”,

    ID 为ID_SET_COLOR 的子菜单,然后为CGridDemoView 类添加这个ID 的消息处理函数,

    即OnSetColor()。

    (2)编辑CGridDemoView::OnSetColor()消息处理函数使用颜色对话框。代码如下:

    void CGridDemoView::OnSetColor()

    {

    // TODO: Add your command handler code here

    //获得选中单元格的旧前景色

    CColorDialog dlg(m_CellArray[m_nCurCellID].GetFgColor());

    if (dlg.DoModal()==IDOK)

    枫叶文学网www.fywxw.com

    第4 章 对话框

    ·97·

    {

    //设置新的前景颜色

    m_CellArray[m_nCurCellID].SetFgColor(dlg.GetColor());

    }

    }

    4.6 消息对话框

    消息对话框MessageBox 是Windows 系统中自带的最简单的对话框,用于提示一些简单

    的信息,如图4-33 所示。本章4.1.3 节中实例Sample4_1 在登录对话框的消息处理函数中就

    大量使用了消息对话框。

    图4-33 消息对话框

    在MFC 中,消息对话框通过CWnd::MessageBox()和AfxMessageBox()两个函数进行调用。

    前一个函数是CWnd 的成员函数,而AfxMessageBox()则是全局函数。两个函数的原型分别为:

    int MessageBox(

    LPCTSTR lpszText,

    LPCTSTR lpszCaption = NULL,

    UINT nType = MB_OK

    );

    int AfxMessageBox(

    LPCTSTR lpszText,

    UINT nType = MB_OK,

    UINT nIDHelp = 0

    );

    ? lpszText 参数:用于设置对话框的内容。

    ? lpszCaption 参数:用于设置对话框的标题。

    ? nType 参数:设置消息对话框的属xìng,属xìng可以为表
上一页 目录 下一页