视图切换问题——切换后显示不正常!

Ashura 2001-12-21 12:03:13
我写数据库管理程序时定义了两个视图,其中一个放上了一个MSFlexGrid
控件,切换到无FlexGrid的视图没问题,但是在切换回来的时候FlexGrid
控件就只出现第一行(我原来填充了数据库记录的,全没了!)555……
救命!
...全文
118 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinfee 2001-12-25
  • 打赏
  • 举报
回复
呵呵,Ashura(阿修罗) 老兄很是慷慨,小弟先谢谢了,互相帮助是应该的,共同进步!
Ashura 2001-12-25
  • 打赏
  • 举报
回复
结……
Ashura 2001-12-21
  • 打赏
  • 举报
回复
可是我就是用OnDraw()
来填充FlexGrid的啊:
CXXXView::OnDraw()
{
CString strFilter;
CRect rect;
long i;
long lWidth;
int iRecordNums;
int iCurRow;
CString strCell;

iCurRow = 1;
GetClientRect(&rect);
lWidth = rect.Width();
for ( i = 0; i < 5; i++ )
{
m_FlexGrid.SetColWidth(i, lWidth * 2.97);
}
if ( m_pSet->IsEOF() )
m_FlexGrid.SetRows(1);
else
{
if ( !m_pSet->IsEOF())
{
m_pSet->MoveNext();
}
iRecordNums = m_pSet->GetRecordCount();
m_FlexGrid.SetRows(iRecordNums + 1);
m_pSet->MoveFirst();
while ( iCurRow < iRecordNums + 1 )
{
m_FlexGrid.SetRow(iCurRow);
m_FlexGrid.SetCol(0);
m_FlexGrid.SetText(m_pSet->m_strName);
m_FlexGrid.SetCol(1);
strCell.Format("%d", m_pSet->m_lCode);
m_FlexGrid.SetText(strCell);
m_FlexGrid.SetCol(2);
strCell.Format("%d", m_pSet->m_lDays);
m_FlexGrid.SetText(strCell);
m_FlexGrid.SetCol(3);
strCell.Format("%d", m_pSet->m_lNumber);
m_FlexGrid.SetText(strCell);
m_FlexGrid.SetCol(4);
m_FlexGrid.SetText(m_pSet->m_strLevel);

iCurRow += 1;
m_pSet->MoveNext();
}
}
m_FlexGrid.MoveWindow(&rect);
m_FlexGrid.RedrawWindow(&rect);
}
fengfeng1_1 2001-12-21
  • 打赏
  • 举报
回复
用Invalidate()就可以
profwy 2001-12-21
  • 打赏
  • 举报
回复
重画一下
TigerHu 2001-12-21
  • 打赏
  • 举报
回复
重载OnDraw
Ashura 2001-12-21
  • 打赏
  • 举报
回复
呵,sinfee(口是心非)果然有魅力……PF,下周结帐,3Q!
sinfee 2001-12-21
  • 打赏
  • 举报
回复
OnPaint
OnUpdate
上面应有个好使的,OnDraw没调用是常有的,经常被调用 的是OnPaint,而
Invalid等方式是后应UpdateWindow(TRUE)一下,别一个常被调用 的是
OnUpdate(..),建议不行的话放在这个函数中。
Ashura 2001-12-21
  • 打赏
  • 举报
回复
急~~~~~
Ashura 2001-12-21
  • 打赏
  • 举报
回复
不过我发现视图切换回来时OnDraw()没有调用,是否这个原因?
vccsdn 2001-12-21
  • 打赏
  • 举报
回复
OnDraw的开头将记录集移到开头去就行了

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧