我想实现一个类似于连连看那种界面,即窗体上有很多小图块,每个小图块能响应事件并能更改自身样式.
我现在的方法是:将小图块作为一个控件,从Control继承,在控件上绘图,然后将几十个控件放到主窗体上.
现在的问题是:主窗体显示控件时速度慢,且闪烁.尤其是当窗体被其他程序遮挡后需要重绘时,简直惨不忍堵.
我知道双缓冲技术可以解决绘图的闪烁问题,但我这里不知道要怎样应用这个技术,因为不是直接绘图.
如果采用直接绘图方式,则每个小图块又如响应事件和改变样式呢?
请大家给点思路,谢谢
我现在的方法是:将小图块作为一个控件,从Control继承,在控件上绘图,然后将几十个控件放到主窗体上.
现在的问题是:主窗体显示控件时速度慢,且闪烁.尤其是当窗体被其他程序遮挡后需要重绘时,简直惨不忍堵.
我知道双缓冲技术可以解决绘图的闪烁问题,但我这里不知道要怎样应用这个技术,因为不是直接绘图.
如果采用直接绘图方式,则每个小图块又如响应事件和改变样式呢?
请大家给点思路,谢谢
解决方案 »
- 基于RSA加密算法的数字签名系统(求帮助)
- C#判断指定进程是否存在
- 导出EXCEL的显示格式
- 有人用C#建立手机上的电子地图程序吗,进.....
- IEnumerable<string> expr 是什么意思?这样定义的吗?这是什么语法?
- 抽象类的非抽象方法是否可不实现?
- 困扰了两天的问题,,,哪位大哥帮个忙,,急啊
- 有哪位兄弟给个“开始/暂停/终止”线程的例子吗?C#版 VS2005的
- 我想安装C#,但安装了几次,都没有成功,都回滚了,请问怎么安装
- C#与ASP.NET是如何共同编写B/S程序的?(我想入门)
- MYSql就触发器和游标的一些问题.
- vs2008正式版,不是b2版,哪里下载?可以提供下载地址码?谢谢。最好没有使用限制的。
http://download.csdn.net/source/162553主要如何提高绘制的速度
连连看的区域判断和连线判断都是简单的事情
this.PerformLayout();每次OnPoint的时候调用一下OnFlash()可以有效防止闪烁.
InitialComponents()里面就是这么做的