android的onDraw方法,什么情况下系统会自动调用onDraw
1个回答
2015-02-10 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
向TA提问 私信TA
知道合伙人数码行家
采纳数:117538
获赞数:517196
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。
向TA提问 私信TA
关注
展开全部
程序初始化时,会调用ShowWindow以及UpdateWindow,
而UpdateWindow会发送一个WM_PAINT消息给系统。
因此,你加在OnDraw中的断点会在初始化时生效。
由于,AppWizard生成的程序框架中包含许多涉及发送WM_PAINT消息的函数,比如,当你调整窗口大小,使得客户区中的显示内容改变时,窗口的OnSize函数会发送WM_PAINT消息,此时OnDraw会被调用。
所以,在客户区的显示内容改变,客户区的大小改变,客户区由隐藏到显示,以及诸如此类使客户区内容改变的操作,都会发送WM_PAINT消息,从而调用OnDraw。
而UpdateWindow会发送一个WM_PAINT消息给系统。
因此,你加在OnDraw中的断点会在初始化时生效。
由于,AppWizard生成的程序框架中包含许多涉及发送WM_PAINT消息的函数,比如,当你调整窗口大小,使得客户区中的显示内容改变时,窗口的OnSize函数会发送WM_PAINT消息,此时OnDraw会被调用。
所以,在客户区的显示内容改变,客户区的大小改变,客户区由隐藏到显示,以及诸如此类使客户区内容改变的操作,都会发送WM_PAINT消息,从而调用OnDraw。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询