有关Modeless Dialog的问题,100分,在线等!

simonchenxu 2003-08-17 08:59:53
我现在有一个Main frame
在main frame里面以Modeless的方式调用一个dialog
dlg.Create(IDD..., this);
dlg.ShowWindow(SW_SHOW);
这个dlg里面有一个public的cstring str

我在调用他以后可以将一些字符串从Main frame里面传入dlg

在这个dlg的OnPaint里面有:
dc.TextOut(0,0,str);

奇怪的是我在mainframe里面改变了dlg.str的值,但是,不能显示!!
于是我但不跟踪,在多处设置断点,这个时候,是可以显示的!!!
非常奇怪,大家帮帮忙解决一下,非常着急!
...全文
27 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
syl08341 2003-08-18
  • 打赏
  • 举报
回复
直接用UpdateWindow();就可以
UpdateWindow();的参数为BOOL值
一个是读入
一个是输出

希望知道缘由~
数值改变后不UpdateWindow();的话,值虽然改变,但没有显示出来。
需要重画才能显示。
阿鹏兄 2003-08-18
  • 打赏
  • 举报
回复
帮你up
simonchenxu 2003-08-18
  • 打赏
  • 举报
回复
我试过了,updatewindow是不可以的,还是要用redrawwindow
非常感谢大家,现在就给分
simonchenxu 2003-08-17
  • 打赏
  • 举报
回复
我解决了,在赋值以后,调用RedrawWindow就可以了
还是很感谢楼上的热心人,每人献上25分
如果还有别的方法,继续给分
希望知道缘由~
非常感谢!
simonchenxu 2003-08-17
  • 打赏
  • 举报
回复
又有新发现
如果付值过后,切换到别的窗口,在切换回来,就有显示了!
难道是OnPaint没有调用?
simonchenxu 2003-08-17
  • 打赏
  • 举报
回复
FT
还是不行
我刚才加了这句话,似乎成功过一次
然后就再也不能显示了
郁闷郁闷
awant2k 2003-08-17
  • 打赏
  • 举报
回复
错了,应该是UpdateWindow()
awant2k 2003-08-17
  • 打赏
  • 举报
回复
在对 对str附值的时候调用 dlg的 UpdateData(FALSE);
simonchenxu 2003-08-17
  • 打赏
  • 举报
回复
大家帮帮忙,真的很急~
simonchenxu 2003-08-17
  • 打赏
  • 举报
回复
只有一个地方对str附值!
关键是跟踪的时候一切正常,可以正常显示,可是运行就不能显示
郁闷ing
BSRONG 2003-08-17
  • 打赏
  • 举报
回复
是否在其他时候dlg.str的值变为空了,跟踪一下

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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