wince下,MFC基于dialog工程,CMyDlg无法重载OnPaint()?

谭海燕 2010-06-21 08:03:46
对比下win32的MFC Dialog程序,

win32的CMyDlg下自动生成就有一个OnPaint()函数


wince MFC Dialog程序,


wince CMyDlg下自动生成的时候没有OnPaint()函数,

但是我需要在OnPaint()中进行操作,

于是,在Wince的MFC中CMyDlg中添加了一个函数OnPaint(),结果设置断点发现,我添加的OnPaint()函数根本

就没有调用。。

请问各位高手,这是为啥呢?


我添加OnPaint的时候,是直接右键CMyDlg添加函数OnPaint()的。


但是结果就是没有被调用。。。


郁闷。。


请各位帮解答。


谢谢
...全文
195 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiezonglin 2010-06-22
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 feiyinzilgd 的回复:]
我想在对话框中响应键盘按键的事件,


需要重载PreTranslateMessage这个函数。。


是不是也要在那个里面添加??
[/Quote]
这个应该在属性的重写里面找
Eleven 2010-06-22
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 hongya6088 的回复:]
vs2005和vs6添加的方法不一样,但目的是一样的。
[/Quote]
找不到的话,就手动加,不会手动加的话,对照着VC6的写法。。。
hongya6088 2010-06-22
  • 打赏
  • 举报
回复
vs2005和vs6添加的方法不一样,但目的是一样的。
zxdlms 2010-06-22
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 feiyinzilgd 的回复:]
引用 5 楼 hongya6088 的回复:
winCE是可以重载OnPaint函数的,今天刚用过,lZ用的是vs那个版本?
vc6 使用类向导 添加WM_PAINT响应函数。
vs2005以后 要在类视图类的属性中的消息列表中选择WM_PAINT消息

一语惊醒梦中人。。

果然,我用的是VS2005....
[/Quote]
这个和vs2005有关系吗??不管是VC6还是VC2005都是要为WM_PAINT添加消息响应的啊。
hongya6088 2010-06-22
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 feiyinzilgd 的回复:]

VM_PAINT消息?


这个消息难道不是系统自动捕获然后调用OnPaint()的么?


C/C++ code

////////////////////////////////////我的OnPaint()函数如下

void CUpDownGUI_V1Dlg::OnPaint()
{
//相关操作

}
[/Quote]

系统捕获WM_PAINT消息后会响应OnPaint()函数,我的意思是可以在窗口过程中处理WM_PAINT消息。
hongya6088 2010-06-22
  • 打赏
  • 举报
回复
在属性列表中的 overrides 中添加。
向立天 2010-06-22
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 feiyinzilgd 的回复:]
我想在对话框中响应键盘按键的事件,


需要重载PreTranslateMessage这个函数。。


是不是也要在那个里面添加??
[/Quote]
属性表里有个重载函数的列表
是一个小立方体的按钮
谭海燕 2010-06-21
  • 打赏
  • 举报
回复
我想在对话框中响应键盘按键的事件,


需要重载PreTranslateMessage这个函数。。


是不是也要在那个里面添加??
谭海燕 2010-06-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hongya6088 的回复:]
winCE是可以重载OnPaint函数的,今天刚用过,lZ用的是vs那个版本?
vc6 使用类向导 添加WM_PAINT响应函数。
vs2005以后 要在类视图类的属性中的消息列表中选择WM_PAINT消息
[/Quote]


一语惊醒梦中人。。


果然,我用的是VS2005....


谭海燕 2010-06-21
  • 打赏
  • 举报
回复
VM_PAINT消息?


这个消息难道不是系统自动捕获然后调用OnPaint()的么?



////////////////////////////////////我的OnPaint()函数如下

void CUpDownGUI_V1Dlg::OnPaint()
{
//相关操作

}








hongya6088 2010-06-21
  • 打赏
  • 举报
回复
winCE是可以重载OnPaint函数的,今天刚用过,lZ用的是vs那个版本?
vc6 使用类向导 添加WM_PAINT响应函数。
vs2005以后 要在类视图类的属性中的消息列表中选择WM_PAINT消息
hongya6088 2010-06-21
  • 打赏
  • 举报
回复
捕获WM_PAINT消息
谭海燕 2010-06-21
  • 打赏
  • 举报
回复



莫非win32下,重载OnPaint()函数的时候,除了添加OnPaint()函数以为还进行了其他的操作?


谭海燕 2010-06-21
  • 打赏
  • 举报
回复
之所以要想在OnPaint里面操作主要是想在我的Dialog种添加一个背景图片。。。


谭海燕 2010-06-21
  • 打赏
  • 举报
回复
自己先顶下。。


唉。。。。


16,472

社区成员

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

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

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