CnPack VCL组件库中 TCnButtonEdit 组件的BUG修正
来源:互联网 发布:黄有龙 赵薇 知乎 编辑:程序博客网 时间:2024/06/09 18:44
CnVCL 组件包版本:[2010-10-01] 20101001
1.当ButtonVisible 为True的时候,Alignment 不会有任何问题,当ButtonVisible 为False时,修改Alignment 为taRightJustify,这个时候,会发现文字的右边会缺少几个字符,他们跑到右侧边界外面了,宽度大概就是按钮宽度,原因在UpdateFormatRect函数中,如下屏蔽代码,问题解决。
原因应该是ClientRect代表的就是整个对象的绘图区。
procedure TCnButtonEdit.UpdateFormatRect;
var
Rect: TRect;
begin
Rect := ClientRect;
if FButtonVisible then
Dec(Rect.Right, FButton.Height) {
else
Inc(Rect.Right, FButton.Height)};
SendMessage(Handle, EM_SETRECTNP, 0, Longint(@Rect));
end;
2.解决上一个问题后,依旧设置ButtonVisible 为False,在设计期间修改Alignment属性,按钮会莫名其妙出现,如下增加一段判断代码,问题解决。
procedure TCnButtonEdit.WMSize(var Msg: TWMSize);
begin
inherited;
if FButtonVisible then
FButton.Width := FButton.Height;
UpdateFormatRect;
end;
- CnPack VCL组件库中 TCnButtonEdit 组件的BUG修正
- 东日的IrisSkin皮肤组件Bug修正
- Delphi 2009(Tiburon)中一些VCL组件的增强
- Delphi2009(Tiburon)中一些VCL组件的增强
- Delphi磁性窗体VCL组件的实现
- VCL组件之重要的公用属性
- vcl组件精要
- 细说制作VCL 组件
- VCL组件之TPanel
- VCL组件之TScrollBar
- VCL组件之按钮
- VCL组件之TStrings
- VCL组件之事件
- VCL组件之方法
- VCL组件开发
- VCL组件之按钮
- VCL组件之Button
- VCL组件之公用对话框组件
- 更改SERVLET里的方法中的传递参数的名称为request,response(原先的为:arg0,arg1)的方法
- zju2857图像转换Image Transformation
- 查看linux 版本命令
- 新人贴,求分
- 在S60加载Bitmap和Mask的效率
- CnPack VCL组件库中 TCnButtonEdit 组件的BUG修正
- GPRS/CDMA行业应用中的TCP与UDP的比较
- Java Swing 窗体居中
- MongoDB配置Master和Slave模式
- Java 面向对象编程 常用到的原则
- JAVA项目开发
- VB连接SQL2000数据库代码
- Oracle 参数 游标[游标更新删除数据]
- 学习笔记(四)