社区
C#
帖子详情
本想在override onPaint事件里重绘背景,发现onPaint事件被多次调用,为何?
老鱼趣多多
2012-04-13 09:54:57
本想在override onPaint事件里重绘背景,发现onPaint事件被多次调用,
override onPaint好像在是针对form上的每一个控件都响应一次paint,
这样的话,本想重绘一次背景,就会被调用多次,请问只想绘制一次背景,比如对背景渐变色绘制,如何做合适?
...全文
123
2
打赏
收藏
本想在override onPaint事件里重绘背景,发现onPaint事件被多次调用,为何?
本想在override onPaint事件里重绘背景,发现onPaint事件被多次调用, override onPaint好像在是针对form上的每一个控件都响应一次paint, 这样的话,本想重绘一次背景,就会被调用多次,请问只想绘制一次背景,比如对背景渐变色绘制,如何做合适?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
老鱼趣多多
2012-04-13
打赏
举报
回复
所以可以这样理解不?
一个form上比如是n个控件,就有可能执行n次重绘,
protected override onPaint(){
//绘制form背景色渐变
}
我这个对背景渐变绘制也响应了n次调用,
但,这个是正常的,否则可能导致了界面很难看。
这个从影响性能考虑,根本没意义。可以这样理解不?
[Quote=引用 1 楼 的回复:]
引起重绘的可能非常多,不是像函数一样,你让他执行才执行,因为要重绘,否则你的界面就没法看了
[/Quote]
bdmh
2012-04-13
打赏
举报
回复
引起重绘的可能非常多,不是像函数一样,你让他执行才执行,因为要重绘,否则你的界面就没法看了
C#自定义数学坐标类
自己定义的数学坐标类,可以直接在
Paint
事件
中
调用
Graphics画出来,实现方式如下: protected
overr
ide
void On
Paint
(
Paint
EventArgs e) { base.On
Paint
(e); Graphics g = CustomCoordinate.GetCoordinate(e....
.NET C# On
Paint
重绘
调用
窗体的On
Paint
事件
protected
overr
ide
void On
Paint
(
Paint
EventArgs e) { base.On
Paint
(e); //绘图 } 但是如何重写控件的On
Paint
事件
呢?比如说绘图是在PictureBox中绘制的,那么...
Flutter编程指南之Dart语言:移动开发语言
通过本课程学习您可以学习到Dart语言如下知识: 第1章 Dart语言概述:Dart语言简介、Dart语言支持平台开发、Flutter为什么选择Dart语言。 第2章 开发环境搭建:下载Dart SDK、Windows下安装Dart SDK、macOS下安装...
c# 如何重写控件的On
Paint
事件
使用On
Paint
事件
可以随时绘制图形
调用
窗体的On
Paint
事件
protected
overr
ide
void On
Paint
(
Paint
EventArgs e){ base.On
Paint
(e); //绘图} 但是如何重写控件的On
Paint
事件
呢?比如说绘图是在PictureBox中绘制的,...
使用On
Paint
函数来
重绘
在打开最小化窗体时依然无法看到
重绘
图形的解决办法
可以有效防止闪烁,但是对于图形,如果用户想打开最小化窗体时,程序会触发
Paint
事件
,如下面的代码所示,程序员本意是想
重绘
所有图形,而此时,虽然执行了ReDrawAllGraphics()方法,但在窗体上依然无法看到重...
C#
110,536
社区成员
642,578
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章