| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1104 人关注过本帖
标题:下面分栏为什么看不出来,代码有什么问题??
只看楼主 加入收藏
赤冰
Rank: 1
等 级:新手上路
帖 子:397
专家分:0
注 册:2007-1-22
收藏
 问题点数:0 回复次数:9 
下面分栏为什么看不出来,代码有什么问题??
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
// TODO: Add your specialized code here and/or call the base class
if(leftsplitter.CreateStatic(this,2,1)==NULL)
return FALSE;
leftsplitter.CreateView(0,0,RUNTIME_CLASS(CLeft),CSize(100,100),pContext);
leftsplitter.CreateView(1,0,RUNTIME_CLASS(CRight),CSize(100,100),pContext);

return CFrameWnd::OnCreateClient(lpcs, pContext);
}

编译通过了,为什么看不出来分栏呢??求救!!
搜索更多相关主题的帖子: 代码 
2007-02-12 15:44
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
收藏
得分:0 
使用leftsplitter.SetRowInfo(),
leftsplitter.SetColumnInfo().

=×&D o I p R e E n C g T l X&×=
2007-02-12 16:17
赤冰
Rank: 1
等 级:新手上路
帖 子:397
专家分:0
注 册:2007-1-22
收藏
得分:0 

能不能具体点,我是刚学每多久,还有就是怎么一个竖栏,然后再弄两个横栏呢??

|
|____
|
|
象这样,我的代码总是有问题啊?麻烦帮我再看一下,谢谢!!
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{

if(left.CreateStatic(this,1,2)==NULL)
return FALSE;
if(right.CreateStatic(&left,2,1,WS_CHILD | WS_VISIBLE,left.IdFromRowCol(0,1)==NULL))
return FALSE;
left.CreateView(0,0,RUNTIME_CLASS(CViewL),CSize(400,400),pContext);
//left.CreateView(0,1,RUNTIME_CLASS(CViewRT),CSize(400,400),pContext);
right.CreateView(0, 0,RUNTIME_CLASS(CViewRT), CSize(100, 100), pContext);
right.CreateView(0, 0,RUNTIME_CLASS(CViewRB), CSize(100, 100), pContext);
return TRUE;

//return CFrameWnd::OnCreateClient(lpcs, pContext);
}

2007-02-13 11:23
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
收藏
得分:0 

BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{

if(left.CreateStatic(this,1,2)==NULL)
return FALSE;
left.CreateView(0,0,RUNTIME_CLASS(CViewL),CSize(400,400),pContext);

if(right.CreateStatic(&left,2,1,WS_CHILD | WS_VISIBLE,left.IdFromRowCol(0,1)==NULL))
return FALSE;
right.CreateView(0, 0,RUNTIME_CLASS(CViewRT), CSize(100, 100), pContext);
right.CreateView(1, 0,RUNTIME_CLASS(CViewRB), CSize(100, 100), pContext);

CRect rc;
GetClientRect( &rc );
right.SetRowInfo( 0, rc.bottom /2, 0 );

return TRUE;

}

要注意创建的顺序!!!


=×&D o I p R e E n C g T l X&×=
2007-02-13 16:55
赤冰
Rank: 1
等 级:新手上路
帖 子:397
专家分:0
注 册:2007-1-22
收藏
得分:0 
对不起,还是不行啊,我刚才调试了一下:
if(right.CreateStatic(&left,2,1,WS_CHILD | WS_VISIBLE,left.IdFromRowCol(0,1)==NULL))
就是在这出现的错误,是不是我的分栏有问题啊,我份两行,两列都没事,就是三份时出错.
2007-02-13 17:36
赤冰
Rank: 1
等 级:新手上路
帖 子:397
专家分:0
注 册:2007-1-22
收藏
得分:0 

他总是谈出个对话框,上面:

Debug Assertion Failed!

Program:c:\MfcTest\SDI\Debug\SDI.exe

File:winsplit.cpp

line"2329

for information on how your program can cause an assertion failure,see the Visual C++documentation on asserts.

2007-02-13 17:42
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
收藏
得分:0 
将这一行改成如下:
if(!right.CreateStatic(&left,2,1,WS_CHILD | WS_VISIBLE,left.IdFromRowCol(0,1)))
return FALSE;

=×&D o I p R e E n C g T l X&×=
2007-02-13 17:59
赤冰
Rank: 1
等 级:新手上路
帖 子:397
专家分:0
注 册:2007-1-22
收藏
得分:0 
成功了!踏魔狼你真棒,非常感谢!!!!!!不介意的话,你能留个qq号么,我有什么问题好再问你,刚学vc有好多不懂的.

对了,我看一些列表中能插入一些图标,那这些图标是怎么弄的啊
2007-02-13 18:18
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
收藏
得分:0 
我的QQ是:447389477
列表的图标吗!一般是用CTreeCtrl::InsertItem来处理.

=×&D o I p R e E n C g T l X&×=
2007-02-13 19:11
赤冰
Rank: 1
等 级:新手上路
帖 子:397
专家分:0
注 册:2007-1-22
收藏
得分:0 


void CShow::OnClickList1(NMHDR* pNMHDR, LRESULT* pResult)
{

POSTTION pos=m_List.GetFirstSelectedItemPosition();
int cur=m_List.GetNextSelectedItem(pos);
CMainFrame* pmain=(CMainFrame*)GetParentFrame;
*pResult = 0;

}
你能再看看这个代码么?我对sdi分栏之后想把列表框中的数据通过单击事件在另一个分栏中显示出来?可是有出错了!!
/////////////////////////////////////////
ompiling...
Show.cpp
C:\MfcTest\SdiTry\Show.cpp(138) : error C2065: 'POSTTION' : undeclared identifier
C:\MfcTest\SdiTry\Show.cpp(138) : error C2146: syntax error : missing ';' before identifier 'pos'
C:\MfcTest\SdiTry\Show.cpp(138) : error C2065: 'pos' : undeclared identifier
C:\MfcTest\SdiTry\Show.cpp(138) : error C2440: '=' : cannot convert from 'struct __POSITION *' to 'int'
This conversion requires a reinterpret_cast, a C-style cast or function-style cast
C:\MfcTest\SdiTry\Show.cpp(140) : error C2065: 'CMainFrame' : undeclared identifier
C:\MfcTest\SdiTry\Show.cpp(140) : error C2065: 'pmain' : undeclared identifier
C:\MfcTest\SdiTry\Show.cpp(140) : error C2059: syntax error : ')'
Error executing cl.exe.

SdiTry.exe - 7 error(s), 0 warning(s)
为什么说为声明啊,是不是需要导入文件什么的?

2007-02-13 19:23
快速回复:下面分栏为什么看不出来,代码有什么问题??
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.022205 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved