没有合适的资源?快使用搜索试试~ 我知道了~
vc 6.0 dialogbar 编程
需积分: 9 13 下载量 145 浏览量
2011-05-28
11:48:09
上传
评论
收藏 4KB TXT 举报
温馨提示
试读
6页
vc 6.0 dialogbar 编程
资源推荐
资源详情
资源评论
打造完美的DialogBar
DialogBar相比Dialog有很多优势。因CDialogBar继承于CControlBar,因此其可以Docking在窗口一边,而把CView挤压开,但是
CDialogBar 的使用并不是很容易,因为 MFC 里面并没有提供直接可以使用的CDialogBar,我们需要自己动手,打造自己的完美的
DialogBar。
首先,你需要建立一个CDialog的子类(比CMyDlgBar)。然后,我们来把他一步步转换成CDialogBar的子类。
1、改变基类和消息映射
我们头文件中把CMyDlgBar的基类改成CDialogBar (原来CDialog),并且在cpp文件中的BEGIN_MESSAGE_MAP也做同样的修改。
修改头文件和cpp文件里的构造函数,并且修改DoDataExchange()的三处地方:
CMyDlgBar:: CMyDlgBar (CWnd* pParent /*=NULL*/)
: CDialog(CMyDlgBar::IDD, pParent)
{
...
void CMyDlgBar::DoDataExchange(CDataExchange* pDX)
CDialog::DoDataExchange(pDX);
...
修改为:
CMyDlgBar (); //标准构造函数
CMyDlgBar:: CMyDlgBar (){
...
void CMyDlgBar::DoDataExchange(CDataExchange* pDX)
CDialogBar::DoDataExchange(pDX);
...
2、改写OnInitDialog
在头文件的消息函数声明中插入:
afx_msg LONG OnInitDialog(UINT, LONG);
在cpp文件的消息映射中插入:
ON_MESSAGE(WM_INITDIALOG, OnInitDialog);
并且在cpp文件中实现这个函数:
LONG CPfctDlgBar::OnInitDialog(UINT wParam, LONG lParam){
BOOL bRet = HandleInitDialog(wParam, lParam);
if(!UpdateData(FALSE)){
TRACE0("Warning, Unalbe to init update.\n");
}
// Add Code here
return bRet;
}
不错,现在你可以在DialogBar里面初始化控件了。
3、使用CMyDlgBar
首先确定CMyDlgBar的属性,如果不是以下设置,就修改过来:
2、改写OnInitDialog
在头文件的消息函数声明中插入:
afx_msg LONG OnInitDialog(UINT, LONG);
在cpp文件的消息映射中插入:
ON_MESSAGE(WM_INITDIALOG, OnInitDialog);
并且在cpp文件中实现这个函数:
LONG CPfctDlgBar::OnInitDialog(UINT wParam, LONG lParam){
BOOL bRet = HandleInitDialog(wParam, lParam);
if(!UpdateData(FALSE)){
TRACE0("Warning, Unalbe to init update.\n");
}
// Add Code here
return bRet;
}
不错,现在你可以在DialogBar里面初始化控件了。
3、使用CMyDlgBar
首先确定CMyDlgBar的属性,如果不是以下设置,就修改过来:
剩余5页未读,继续阅读
资源评论
hankqqq
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功