码迷,mamicode.com
首页 > 其他好文 > 详细

修复 XE8 FMX TGridLayout 容器自动计算宽度及高度的问题

时间:2015-05-22 16:54:48      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:

说明:TGridLayout 提供计算容器内控件等分的功能:

  • 横式(Orientation=Horizontal)可将 ItemWidth = -1(小于0则自动等分)
  • 直式(Orientation=Vertical)可将 ItemHeight = -1(小于0则自动等分)

问题:当 TGridLayout 设定 Padding 边界时,会造成等分计算错误。

适用:XE8 Firemonkey

修复方法:

请将源码 FMX.Layouts.pas 复制到自己的工程目录里,再进行修改。

找到:
if CurPos.X + LItemWidth > Self.Width - Self.Padding.Left -
改成:
if CurPos.X + LItemWidth - Self.Padding.Left - 0.1 > Self.Width - Self.Padding.Left -

找到:
if CurPos.Y + LItemHeight > Self.Height - Self.Padding.Top -
改成:
if CurPos.Y + LItemHeight - Self.Padding.Top - 0.1 > Self.Height - Self.Padding.Top -

效果:

技术分享

修复 XE8 FMX TGridLayout 容器自动计算宽度及高度的问题

标签:

原文地址:http://www.cnblogs.com/onechen/p/4522539.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!