oasser怎么给能给手机充电的自行车充

纠纷处理 (9:00-18:00)
图书审核 (9:00-18:00)
成功加入购物车
艺术品藏品
出版时间:&
印刷时间:&
出版时间:&
印刷时间:&
请选择所在地
仅1件在售,欲购从速
卖家超过10天未登录
商品分类:
艺术品收藏创建的CDialogBar怎么没看见?
20xianglitian]
编辑:www.fx114.net
本篇文章主要介绍了"创建的CDialogBar怎么没看见?
20xianglitian]",主要涉及到创建的CDialogBar怎么没看见?
20xianglitian]方面的内容,对于创建的CDialogBar怎么没看见?
20xianglitian]感兴趣的同学可以参考一下。
1.是多文档工程。
2.在CMainfram.h添加CDialogBar&m_wndMyDialogBar;
3.在CMainfram.cpp&Oncreat中:
&if&(!m_wndMyDialogBar.Create(this,IDD_DIALOG1,/*这个是对话框的ID,对话框没有创建类,应该不用吧?*/
&CBRS_RIGHT&|&CBRS_TOOLTIPS&|&CBRS_FLYBY&|&CBRS_HIDE_INPLACE,
&130/*这个是m_wndMyDialogBar&的ID*/))
&TRACE0("Failed&to&create&dialog&bar&m_wndMyDialogBar\n");
&return&-1;
//&fail&to&create
&m_wndMyDialogBar.EnableDocking(CBRS_ALIGN_LEFT&|&CBRS_ALIGN_RIGHT);
&EnableDocking(CBRS_ALIGN_ANY);
&&&&ShowControlBar((CControlBar&*)&m_wndMyDialogBar,true,false);
运行后没看到那个对话框工具条,咋回事?单步跟踪已经看到那个m_wndMyDialogBar的m_hWnd是有值的。后来另外做了一个菜单项来执行ShowControlBar((CControlBar&*)&m_wndMyDialogBar,true,false),结果也没实现。友情帮顶,友情帮顶if&(!m_wndDlgBar.Create(this,&IDR_MAINFRAME,&
CBRS_ALIGN_TOP,&AFX_IDW_DIALOGBAR))
TRACE0("Failed&to&create&dialogbar\n");
return&-1;
//&fail&to&create
}请问schlafenhamster&怎么不用对话框的ID呢?那怎么建立关联?谢谢!照着MSDN的例子做了可就是不见那个对话框工具栏显示出来,望高手指教,非常感谢。
MSDN&sample:
int&CMainFrame::OnCreate(LPCREATESTRUCT&lpCreateStruct)
&&&if&(CMDIFrameWnd::OnCreate(lpCreateStruct)&==&-1)
&&&&&&return&-1;
&&&EnableDocking(CBRS_ALIGN_ANY);
&&&//&m_wndDlgBar&is&a&CDialogBar&member&of&CMainFrame
&&&//&IDD_DIALOGBAR&-&Resource&ID&of&the&dialog&
&&&//&template.&This&dialog&template&should&be&created&
&&&//&with&&the&&style&&WS_CHILD&and&no&other&style.
&&&//&The&template&must&not&have&the&style&WS_VISIBLE.
&&&if&(!m_wndDlgBar.Create(this,&IDD_DIALOGBAR,
&&&&&&CBRS_LEFT|CBRS_TOOLTIPS|CBRS_FLYBY,&IDD_DIALOGBAR))
&&&&&&TRACE0("Failed&to&create&DlgBar\n");
&&&&&&return&-1;&&&&&&//&Fail&to&create.
&&&return&0;
}if&(!m_wndDlgBar.Create(this,&IDR_MAINFRAME,&&
CBRS_ALIGN_TOP,&AFX_IDW_DIALOGBAR))//AFX_IDW_DIALOGBAR=0xE805&&//&CDialogBar
另外在资源中插入的DialogBar,不是Dialog&&&&"另外在资源中插入的DialogBar,不是Dialog"?&意思是可以直接在资源视图中插入DialogBar吗?可是我找不到这个功能呢,你是用VC2008吗?
&&&&而且这句代码运行时总是报错,应该不是用那个AFX_IDW_DIALOGBAR。
&&&&if&(!m_wndDlgBar.Create(this,&IDR_MAINFRAME,&&&
&&&&CBRS_ALIGN_TOP,&AFX_IDW_DIALOGBAR))我用VC60。在资源中insert。resource。dialog。展开dialog。有dlgbar。就行了。VC2008怎么比VC&6还不好用,确实没有那个dlgbar。真够痛苦。CDialogBar有那个控件,你从project--&Add&to&project---&component--&c++&component里有这个组件project--&Add&to&project---&component--&c++&component
这个是VC6才有的啊。
快死掉了我!!!m_wndMyDialogBar.EnableDocking(CBRS_ALIGN_LEFT&|&CBRS_ALIGN_RIGHT);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndMyDialogBar);//&加上这个我正想说到这个“DockControlBar(&m_wndMyDialogBar);”呢,加了这句编译能过可是运行这句就过不了了,也是这个折腾了我好久啊,现在都晕了。引用&12&楼&new_new_man&的回复:我正想说到这个“DockControlBar(&m_wndMyDialogBar);”呢,加了这句编译能过可是运行这句就过不了了,也是这个折腾了我好久啊,现在都晕了。
Debug下调试一下,啥错误?进入GetControlBar()里面有一个pos&变量,它的值是0,然后就返回了一个NULL指针,于是中断。那个pos&是一个position类型,不知道是什么来的,MSDN里没有详细解释哦。忘了问你的IDD_DIALOG1的style是child,Border设置为none嗯,是的,就是IDD_DIALOG1的style=child,Border=none,可就是过不了,你试下看行不行,谢谢!if&(!m_wndMyDialogBar.Create(this,&IDD_MYDIALOGBAR,
CBRS_TOP&|&CBRS_TOOLTIPS&|&CBRS_FLYBY&|&CBRS_HIDE_INPLACE,
CG_ID_VIEW_MYDIALOGBAR))
TRACE0("Failed&to&create&dialog&bar&m_wndMyDialogBar\n");
return&-1;
//&fail&to&create
m_wndMyDialogBar.EnableDocking(CBRS_ALIGN_TOP&|&CBRS_ALIGN_BOTTOM);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndMyDialogBar);
IDD_MYDIALOGBAR对话框Style为Child,Border为None,经测试没有问题(1)--------------
int&CMainFrame::OnCreate(LPCREATESTRUCT&lpCreateStruct)
if&(CMDIFrameWndEx::OnCreate(lpCreateStruct)&==&-1)
return&-1;
if&(!m_wndMyDialogBar.Create(this,&IDD_DIALOG1,
&&&&&&&&&&&&CBRS_TOP&|&CBRS_TOOLTIPS&|&CBRS_FLYBY&|&CBRS_HIDE_INPLACE,
&&&&&&&&&&&&139))//CG_ID_VIEW_MYDIALOGBAR
&&&&&&&&&&&&TRACE0("Failed&to&create&dialog&bar&m_wndMyDialogBar\n");
&&&&&&&&&&&&return&-1;&&&&&&&&//&fail&to&create
&&&&&&&&m_wndMyDialogBar.EnableDocking(CBRS_ALIGN_TOP&|&CBRS_ALIGN_BOTTOM);
&&&&&&&&EnableDocking(CBRS_ALIGN_ANY);
&&&&&&&&DockControlBar(&m_wndMyDialogBar);//这里进去
(2)-----------------
void&CFrameWnd::DockControlBar(CControlBar*&pBar,&UINT&nDockBarID,&LPCRECT&lpRect)
CDockBar*&pDockBar&=&(nDockBarID&==&0)&?&NULL&:
(CDockBar*)GetControlBar(nDockBarID);
DockControlBar(pBar,&pDockBar,&lpRect);//这里进去
(3)-------------
void&CFrameWnd::DockControlBar(CControlBar*&pBar,&CDockBar*&pDockBar,&LPCRECT&lpRect)
ENSURE_ARG(pBar&!=&NULL);
//&make&sure&CControlBar::EnableDocking&has&been&called
ASSERT(pBar-&m_pDockContext&!=&NULL);
if&(pDockBar&==&NULL)
for&(int&i&=&0;&i&&&4;&i++)
if&((dwDockBarMap[i][1]&&&CBRS_ALIGN_ANY)&==
(pBar-&m_dwStyle&&&CBRS_ALIGN_ANY))
pDockBar&=&(CDockBar*)GetControlBar(dwDockBarMap[i][0]);//就是这里得到一个NULL,接下就是中断了。
ASSERT(pDockBar&!=&NULL);
//&assert&fails&when&initial&CBRS_&of&bar&does&not
//&match&available&docking&sites,&as&set&by&EnableDocking()
ENSURE_ARG(pDockBar&!=&NULL);
ASSERT(m_listControlBars.Find(pBar)&!=&NULL);
ASSERT(pBar-&m_pDockSite&==&this);
//&if&this&assertion&occurred&it&is&because&the&parent&of&pBar&was&not&initially
//&this&CFrameWnd&when&pBar's&OnCreate&was&called
//&i.e.&this&control&bar&should&have&been&created&with&a&different&parent&initially
pDockBar-&DockControlBar(pBar,&lpRect);
}要不我把我的工程代码给你帮分析下可以吗?非常非常感谢啊!不然真的交不了差呢。引用&6&楼&new_new_man&的回复:"另外在资源中插入的DialogBar,不是Dialog"?&意思是可以直接在资源视图中插入DialogBar吗?可是我找不到这个功能呢,你是用VC2008吗?
&&而且这句代码运行时总是报错,应该不是用那个AFX_IDW_DIALOGBAR。
&&if&(!m_wndDlgBar.Create(this,&IDR_MAINFRAME,&&
&&CBRS_ALIGN_TOP,&AFX_IDW……
VC6.0的话在资源里是不能直接插入dialogbar的。对对话模板从CDialogBar派生一个类,然后创建,很简单
if&(!m_dlgBar.Create(this,&IDD_FORMIPVIEW,&
CBRS_ALIGN_RIGHT|CBRS_TOOLTIPS|//&|CBRS_GRIPPER&
CBRS_FLYBY|CBRS_HIDE_INPLACE|CBRS_BORDER_3D,&AFX_IDW_DIALOGBAR)||
!m_dlgBar.InitDialog())
TRACE0("Failed&to&create&dialog&bar\n");
return&-1;&&&&&&//&fail&to&create
m_dlgBar.EnableDocking(CBRS_ALIGN_RIGHT);
DockControlBar(&m_dlgBar);您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知
见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法停靠边的问题
m_wndMyDialogBar.EnableDocking(CBRS_ALIGN_LEFT&|&CBRS_ALIGN_RIGHT);
限制了只能停靠在左右边。
DockControlBar(&m_wndMyDialogBar);
是默认停靠到顶边。跟左右边冲突,所以获取pDockBar的时候出错。
DockControlBar(&m_wndMyDialogBar,&AFX_IDW_DOCKBAR_LEFT);
改成这样就好了,第二个参数表示停在哪个停靠栏上。
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!
二、互相尊重,对自己的言论和行为负责。
本文标题:
本页链接:

我要回帖

更多关于 如何给自行车轮胎充气 的文章

 

随机推荐