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

说明: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 -

效果:

时间: 2024-08-29 01:40:31

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

网页图片宽度和高度自适应的方法

在我们设计网页的时候,经常会遇到图片自适应问题,实际这些工作完全可以交给浏览器来完成就可以了,只可惜,无论是IE还是FIREFOX在图片自适应这个问题上都处理的不尽人意,网上实现网页图片宽度和高度的方法也很多,主要又两种: 第一种是使用CSS来完成:第二种是使用Javascript来完成,根据实际的应用效果来说,使用Javascript还是比较靠谱一点,因为CSS的expression的确有点烦,笔者是指使用效果上有点恼人,本文专门把这两种都总结一下,方便站长们参考使用. 一.使用CSS实现图片

IOS7中自动计算label的宽度和高度的方法

1 #import "ViewController.h" 2 3 @implementation ViewController 4 5 - (void)viewDidLoad { 6 [super viewDidLoad]; 7 8 //根据固定的宽度计算 计算label的高度 9 [self sizeToLabelHeight]; 10 11 //根据固定的高度 计算label的宽度 12 [self sizeToLabelWidth]; 13 14 } 15 16 /** 17 *

JS获取各种宽度、高度的简单介绍:

JS获取各种宽度.高度的简单介绍: scrollHeight: 获取对象的滚动高度. scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:获取对象的滚动宽度 offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度 offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧

有两种分别用<bgsound>和<embed></embed>标签,当用<embed>插入背景音乐时可以设置宽度和高度为0,隐藏播放器。

<bgsound>: <bgsound> 是用来插入背景音乐,但只适用于 ie,其参数设定不多.如下 <bgsound src="your.mid" autostart=true loop=infinite> src="your.mid"设定 midi 档案及路径,可以是相对或绝对.autostart=true是否在音乐档下载完之后就自动播放.true 是,false 否 (内定值).loop=infinite是否自动反复播放.l

JS 获取各个宽度和高度

IE中: document.body.clientWidth ==> BODY对象宽度 document.body.clientHeight ==> BODY对象高度 document.documentElement.clientWidth ==> 可见区域宽度 document.documentElement.clientHeight ==> 可见区域高度 FireFox中: document.body.clientWidth ==> BODY对象宽度 document.b

关于Div的宽度与高度的100%设定

http://www.cnblogs.com/clare-zhang/archive/2011/08/26/2154220.html 正像你所知道的那样,设置DIV大小的有两个属性width和height,以前在学习DIV每次给DIV设置100%宽度或高度时都很迷惑,不明 确这个100%的宽度(高度)到底有多宽有多高?这个100%是从哪里得到的从哪里继承的?今天我们的话题就是有关div高度100%的问题! 其实,要弄懂div宽度|width100%.div高度|height100%到底是怎么实现

关于div宽度和高度的100%设定

设置DIV大小的有两个属性width和height,以前在学习DIV每次给DIV设置100%宽度或高度时都很迷惑,不明白这个100%的宽度(高度)到底有多宽有多高?这个100%是从哪里得到的从哪里继承的?今天我们的话题就是有关div高度100%的问题! 其实,要弄懂div宽度|width100%.div高度|height100%到底是怎么实现的,只需弄懂一个简单的问题就可以了,即100%的基数是谁,就是这个100%是相对于谁的width.height来说是100%? div的100%是从其上一级

JS里获取各种宽度,高度的简介

有时候项目中会用到用js获取元素位置来定位元素,首先通过图片说明scrollWidth,clientWidth,offsetWidth的关系. JS获取各种宽度.高度的简单介绍: scrollHeight: 获取对象的滚动高度. scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 scrollWidth:获取对象的滚动宽度 offsetHeight:获取对象相对于版面或由父坐标 of

[IOS 开发] NSString-计算文本的宽度和高度

在实际的代码应用中,我们常常需要计算,特定文本的宽度和高度.然后,根据长度和宽度值,动态的设置容器(如:UILabel)的长和宽来进行适应. 假如:我们有如下一段文本. UIFont *theFont  = [UIFont systemFontOfSize:14]; NSString *strText = @"这是一段很长的字符串,我们将根据要求的字体大小,来计算实际需要的宽度和高度!"; 1.计算文本的宽度 NSMutableDictionary *dic = [NSMutableD