Dlite的技术笔记

随手记录的开发相关笔记,希望对他人也有帮助

令人郁闷的XPMan

      因工作需要,最近用Delphi写了一个1万多行的小程序,主要供内部使用。为了使用XP风格的界面,在其中使用了XPMan。结果在同事试用的过程中,发现了两个Bug,竟然都是和XPMan相关的。  
 
      上网搜了一下,发现VCL+ XP Manifest还有许多Bug,现列举如下:
      1. DropDown风格的TCombobox控件,用BackSpace键删除汉字时,光标定位不准确,还会出现乱码。暂时可以通过重载KeyPress函数写响应的处理过程弥补。
      2. TLabel和TPanel的背景色不正常;通过设置ParentFont=False;ParentControl3D=False;可以解决。
      3. 放在TFrame上的各种TGraphic派生控件会消失,参见这里的讨论。
      4. ActionMenubar 和 ActionToolbar的渐变绘制不正常。
      5. 字符集问题:在Win2000下,即使设了Charset,非Ansi字符有时也会显示乱码。
      6. 。。。
 
      由此可见,一旦使用了XPMan,往往会陷入“the XPMan hell in VCL”。 这些Bug大多是因为VCL框架没有使用Windows控件标准绘制和资源管理方式,最后只能通过在程序里打补丁的方式暂时解决。
       所以还是从程序中去掉与之相关的代码为好。
阅读更多
版权声明:欢迎转载博主的原创文章,但请注明出处。 https://blog.csdn.net/DLite/article/details/780914
个人分类: Delphi编程
上一篇解决“应用程序正常初始化(0x00000005)失败”错误
下一篇grep 的原意
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭