本想在override onPaint事件里重绘背景,发现onPaint事件被多次调用,为何?

老鱼趣多多 2012-04-13 09:54:57
本想在override onPaint事件里重绘背景,发现onPaint事件被多次调用,

override onPaint好像在是针对form上的每一个控件都响应一次paint,

这样的话,本想重绘一次背景,就会被调用多次,请问只想绘制一次背景,比如对背景渐变色绘制,如何做合适?
...全文
123 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
老鱼趣多多 2012-04-13
  • 打赏
  • 举报
回复
所以可以这样理解不?
一个form上比如是n个控件,就有可能执行n次重绘,
protected override onPaint(){
//绘制form背景色渐变
}

我这个对背景渐变绘制也响应了n次调用,
但,这个是正常的,否则可能导致了界面很难看。
这个从影响性能考虑,根本没意义。可以这样理解不?
[Quote=引用 1 楼 的回复:]
引起重绘的可能非常多,不是像函数一样,你让他执行才执行,因为要重绘,否则你的界面就没法看了
[/Quote]
bdmh 2012-04-13
  • 打赏
  • 举报
回复
引起重绘的可能非常多,不是像函数一样,你让他执行才执行,因为要重绘,否则你的界面就没法看了

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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