急救~~~~,对话框标题的问题!!!!!!!!!! 在线等待!解决立即给分!

ColderRain 2002-09-12 05:49:08
我自画了对话框(不是FRAME,是模态对话框)的标题栏,但是当我单击对话框以外的地方时,对话框闪烁几下,就恢复了原来的样子.
怎么样才能保持对话框自画标题永远不变???

我的用同样的方法改写FRAME,在活动和非活动的情况下,都工作正常.
OnNcActivate(BOOL bActive) 中加了OnNcPaint()都不起作用!
...全文
71 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
ColderRain 2002-09-12
  • 打赏
  • 举报
回复
已经解决了,非常感谢webber84(糕鱼昏) 。
webber84 2002-09-12
  • 打赏
  • 举报
回复
就这些?我这里运行很正常啊。
用户 昵称 2002-09-12
  • 打赏
  • 举报
回复
void CDlg1::OnNcPaint()
{
// TODO: 在此添加消息处理程序代码
// 不为绘图消息调用 CDHtmlDialog::OnNcPaint()
CDC *pDC = GetWindowDC();
pDC->TextOut( 0, 0, "fdsa" );
pDC->MoveTo( 0, 0 );
pDC->LineTo( 100, 20 );
ReleaseDC( pDC );
}

BOOL CDlg1::OnNcActivate(BOOL bActive)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
//BOOL b = TRUE;// = CDHtmlDialog::OnNcActivate(bActive);
CDC *pDC = GetWindowDC();
pDC->TextOut( 0, 0, "fdsa" );
pDC->MoveTo( 0, 0 );
pDC->LineTo( 100, 20 );
ReleaseDC( pDC );
return TRUE;
}
这是我在xp .net环境下的写的,没有重新刷新
fd 2002-09-12
  • 打赏
  • 举报
回复
关键是这个:WM_NCACTIVATE
还有你得先让系统画过了,才开始画,先调用基类的OnNcActivate,后Draw
webber84 2002-09-12
  • 打赏
  • 举报
回复
能把代码贴出来看看吗?
In355Hz 2002-09-12
  • 打赏
  • 举报
回复
关注,同意 webber84(糕鱼昏)
ColderRain 2002-09-12
  • 打赏
  • 举报
回复
TO: fd()

没有反应
ColderRain 2002-09-12
  • 打赏
  • 举报
回复
TO: Chiun(灯芯草雀:沿途把那风景赏)

没有反映.

TO: webber84(糕鱼昏) ( )
"模态对话框不会失去焦点是什么意思?"

当一个AfxMessageBox()弹出来的时候,你不点"OK", 它会消失吗?
fd 2002-09-12
  • 打赏
  • 举报
回复
而且,先让系统画完了你再画
fd 2002-09-12
  • 打赏
  • 举报
回复
WM_NCACTIVATE
WM_ACTIVATEAPP
WM_ACTIVATE

这三个都要画,搞定,给分
webber84 2002-09-12
  • 打赏
  • 举报
回复
模态对话框不会失去焦点是什么意思?
你在OnNcActivate中OnNcPaint加在什么位置?不会放到调用基类函数以前去了吧。
ColderRain 2002-09-12
  • 打赏
  • 举报
回复
没有人会吗????????????
Chiun 2002-09-12
  • 打赏
  • 举报
回复
WM_SETFOCUS和WM_KILLFOCUS 时PostMessage WM_NCPAINT.
ColderRain 2002-09-12
  • 打赏
  • 举报
回复
OnNcActivate(BOOL bActive)
OnNcPaint()

我都虫灾了.

virtual BOOL PreTranslateMessage(MSG* pMsg);

afx_msg void OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized);

这些我也都虫灾了,都不起作用.
ColderRain 2002-09-12
  • 打赏
  • 举报
回复
我说的是改写模态对话框的自画标题,请看清楚.

主要的问题是---->摸太对话框不会失去焦点.当你电极对话框以外的地方后,对话框依然是活动的,就在这个时候问题出来了----->它闪烁几下后,就恢复了老样子.
lwg7603 2002-09-12
  • 打赏
  • 举报
回复
响应WM_NCPAINT消息!在WM_NCPAINT的函数进行自画操作!
RedFire 2002-09-12
  • 打赏
  • 举报
回复
贴代码。不然谁知道是怎么回事。

16,472

社区成员

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

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

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