求问一下,我一个lablel放在一个image上面为什么label的数字变化的时候闪烁呢? 如题,我的一个黑色背景的image,然后上面放了一个label,定时器是1秒钟变化label的数字的,结果发现过程会闪烁,这个怎么解决啊,我设置了,procedure Tfrm_Main.FormCreate(Sender: TObject);begin Self.DoubleBuffered :=true ;end;这样好像还是没用啊,咋弄呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 win7下测试,不会善。可能跟显卡有关系。 vcl的重画机制效率比较低导致大面积重画时闪烁。所以要么重载控件的一些跟重画相关的方法,要么用firemonkey。 我IMAGE里面放了一个PNG的图片,然后就是图片上放了一个label,每秒改变label的内容,呵呵,有简单点方法吗?重载,没怎么做过,感觉比较复杂 不用Label,直接在图片上TextOut画字 TEXTOUT好像只能是bitmap,我的是PNG,咋弄呢,还有textout能对输出的字进行FONT类的属性修改吗? 要么重载,要么firemonkey,你自己选吧。 image.picture.canvas应该可以textout。我是手机不方便核实。textout之前可以设置canvas.font。 大图片里textout也许还是会闪烁,你试试看 刚才试验了一下,还是闪烁的啊,而且图片只能装在的是BMP,我用的是PNG,输出的字带有矩形区域的,貌似不行啊,呵呵 但是我是DELPHI 7 啊,没有别的方法了吗? 那你若不把label从image上挪走,就只有重载这一条路了。 timer事件有时就会有“闪屏”的效果的 我应该重载哪一个函数呢,求指教楼上的兄弟,这个跟TIMER,有关系吗 那如果不用TIMER,用什么方法呢?呵呵 更正一下,我在这个TIME事件加入事,就不“闪屏” label1.Caption:=FormatDatetime('yyyy-mm-dd hh:mm:ss',now()); 记不确切了,大概是invalid开头的一个方法。 在create事件中加入如下代码: label1.Transparent:=true; BambooCaep (乱拳) 你继续吧,我明天还要上班了呀,这事就交给你了呀 恩,我刚才试验了,窗体上放两个最简单的,组件,就一个image和LABEL,还有TIMER,大概25秒左右闪一次,invalid方法,我去看看 首先看你图片多大。其次是用label来刷真的不是神马好办法。最后,如果是我,而且图较小的话我会用双缓冲来画图兼写字。双缓冲画图不是指--->(Self.DoubleBuffered :=true ;) 就是上面的图片,一个黑色背景的PNG图片,上面是绿色的数字,那个数字一直动,1秒钟动一次 我用的是DELPHI7 ,在网上下载了一个GDI+ PLUS CONTROL ,少了文件:[Fatal Error] GDIPlusControls.dpk(34): Required package 'TntUnicodeVcl_R70' not found请问哪里可以下载到适合D7的类库呢 我加载的是PNG图片,canvas好像只有BMP下才可以重绘啊,还有如果不是Self.DoubleBuffered :=true ,那是指什么呢 发现那个设置双缓冲 ,只对BMP位图才有效,如果PNG图片的图源好像没什么用啊 有那么多时间折腾gdi+,不如直接用firemonkey,绝对不闪。 看来真的有必要去学学DELPHI XE2 Dbgrideh 一个单元格中显示多行文本,怎么控制各行的字体属行和行间距? 寻人合作开发建筑类相关软件 动态创建的memo,和非动态创建的memo的内容显示问题 请问哪里有李维的《inside VCL 架构剖析》电子版的下载地址啊? 一个奇怪的问题,谁能帮帮我?谢谢... 查车牌的SQL语句 怎样获得一字串的从右数的若干字符 请问,Table控件中,怎样改变一条记录中的值。 可用分只够问一个问题:我修改了VCL部分源代码,怎么生效? SQL语句提示"参数不足,期待是1"的问题? 如何在程序中设置IE为默认浏览器? 多线程使用过程中出现内存泄露,大家来帮我查查在哪个地方。分不多,谢谢帮忙啦。
刚才试验了一下,还是闪烁的啊,而且图片只能装在的是BMP,我用的是PNG,输出的字带有矩形区域的,貌似不行啊,呵呵
我应该重载哪一个函数呢,求指教楼上的兄弟,这个跟TIMER,有关系吗
那如果不用TIMER,用什么方法呢?呵呵
label1.Caption:=FormatDatetime('yyyy-mm-dd hh:mm:ss',now());
label1.Transparent:=true;
(乱拳)
你继续吧,我明天还要上班了呀,
这事就交给你了呀
其次是用label来刷真的不是神马好办法。
最后,如果是我,而且图较小的话我会用双缓冲来画图兼写字。双缓冲画图不是指--->(Self.DoubleBuffered :=true ;)
我用的是DELPHI7 ,在网上下载了一个GDI+ PLUS CONTROL ,少了文件:[Fatal Error] GDIPlusControls.dpk(34): Required package 'TntUnicodeVcl_R70' not found请问哪里可以下载到适合D7的类库呢
我加载的是PNG图片,canvas好像只有BMP下才可以重绘啊,还有如果不是Self.DoubleBuffered :=true ,那是指什么呢