如何解决delphi动态生成label控件在Vista下文字不显示问题
环境:Vista+NTFS压缩格式磁盘软件:Delphi7源码大致如下:定义:cur_control:TControlClass;然后从数据库读取数据,分别生成label...
环境:Vista+NTFS压缩格式磁盘软件:Delphi7源码大致如下:定义:cur_control:TControlClass;然后从数据库读取数据,分别生成label、tEdit等控件。如:if type=‘label’ then begin cur_control:=Tlabel ; if f_width=0 then f_width:=13*(v_Caption)); end对控件进行定义后,设定它的属性:如Label控件的: autosize:=false; caption:= v_caption ; width:=v_width; 设定完毕后,存入V_Point := Pointer(cur_control)再将指针存入Tlist。运行后Tedit可以显示,Label在XP下可以显示。但是Label的字符内容在Vista下显示为空白?具体说明:1、vista下 窗体 show 以后,label内容看不到。如果面板存在拖动条,拖动后原来不在界面上显示的label的caption可以显示显示出来,而原来显示不出来的caption由于拖动被隐藏后,再次出现又可以显示。运行后左边的label无文字显示,右边的tedit完全正常。该图显示,拖动滚动条后显示了原来看不到的caption2、依旧Vista下,利用Win+D切换2次,可以显示所有的label控件的caption,但是如果把窗体拖动到桌面边缘,被隐藏起来的caption部分,注意,是caption离开桌面的那一部分会再次无法显示。举例:有一个label的caption=‘1234567’,把Form拖动到桌面边缘,只显示567,然后在拖出来,之前的1234就会消失掉这种问题要如何解决??Win+d两次后,全部label正常显示把窗体拖动到桌面边缘外,离开桌面的caption部分就看不见了。。。说明不是label size,enable,visitable的问题。 另外,问问的截屏功能也会导致这些动态生成的label无法显示
展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询