Delphi xe8 FMX StringGrid根据内容自适应列宽。
Delphi xe8 FMX StringGrid根据内容自适应列宽。
网上的资料比较复杂,而且不是根据字体字号等设置列宽。故自己写了个function来用。
function GetColMaxDataLength(ASGrid: TStringGrid): TObject;
var
  MaxColLength,                  //列数据的最大长度
  CellLength: Single;            //单元格长度
  ACol,ARow: Integer;
begin
  with ASGrid do
  begin
    for ACol := 0 to ColumnCount - 1 do
    begin
      MaxColLength:=Canvas.TextWidth(Columns[ACol].Header);//取列头宽度
      for ARow := 0 to RowCount - 1 do
      begin
        CellLength := Canvas.TextWidth(Cells[ACol,ARow]);//取单元格宽度
        if CellLength > MaxColLength then
          MaxColLength := CellLength;
      end;
      Columns[ACol].Width := MaxColLength + 20;  //加上一个值调整列宽
    end;
  end;
end;
应用很简单,一句搞定:
GetColMaxDataLength(StringGrid1); 
--------------------- 
作者:ooooh 
来源:CSDN 
原文:https://blog.csdn.net/ooooh/article/details/50551212 
版权声明:本文为博主原创文章,转载请附上博文链接!
Delphi xe8 FMX StringGrid根据内容自适应列宽。的更多相关文章
- Asp.net 设置GridView自适应列宽不变形
		
动态绑定的GridView由于列数不固定,而列又太多,这样设置GridView固定宽度就不能满足需求了.为此整理了两种方法来达到GridView自适应列宽不变形的效果. //在GridView的行数据 ...
 - NPOI自适应列宽
		
当本地没有安装Excel,但是又想导出Excel,采用Office插件是行不通的,NPOI是导出Excel的一个开源的插件.在导出Excel后,为了方便阅读,可以才采用自适应列宽的方式使得单元格的宽度 ...
 - excel 根据单元格内容自动调整列宽
		
excel 根据单元格内容自动调整列宽 CreateTime--2018年5月28日08:49:40 Author:Marydon 1.情景展示 单元格宽度超过了列宽 2.解决方案 第一步:同时选 ...
 - devpress grid表格自适应列宽的问题
		
/// <summary> /// 自适应列宽,显示横向滚轴,只有当所有列都已经在界面上加载完成之后才能生效 /// </summary> public void setAut ...
 - 设置tablewidget自适应列宽和设置自动等宽
		
在网上很容易知道自适应列宽,100%不留空显示,这里还是提下: /*设置表格是否充满,即行末不留空*/ ui->tableWidget->horizontalHeader()-> ...
 - 【Qt开发】QTableWidget设置根据内容调整列宽和行高
		
QTableWidget要调整表格行宽主要涉及以下一个函数 1.resizeColumnsToContents(); 根据内容调整列宽 ...
 - WPF学习笔记(3):ListView根据内容自动调整列宽
		
DataGrid中,只要不设置DataGrid的宽度和列宽度,或者将宽度设置为Auto,那么表格就会根据内容自动调整宽度,以显示所有内容.但如果是ListView,按以上方法设置,却达不到列宽自动调整 ...
 - .net设置中GridView自适应列宽
		
有一个项目只有30分钟开发时间,速成,使用了古老的.net gridview. 但需要列宽自适应好看些. 于是琢磨了,实现思路如下. 先看下大致效果(很粗暴没有优化) 代码如下: protected ...
 - Dev gridView中设置自适应列宽和日期显示格式、金额的显示格式
		
在Dev GridView控件中,数据库中表数据日期都是长日期格式(yyyy-MM-dd HH:mm:ss),但显示在控件变成短日期格式(yyyy-MM-dd),金额显示要显示精确的数值, 比如80. ...
 
随机推荐
- sublime package control INSTALLATION
			
Simple The simplest method of installation is through the Sublime Text console. The console is acces ...
 - (转)A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers
			
A curated list of Artificial Intelligence (AI) courses, books, video lectures and papers. Updated 20 ...
 - HTML5常用API
			
.Fullscreen 该API允许开发者以编程方式将Web应用程序全屏运行,使Web应用程序更像本地应用程序. .Page Visibility 该API可以用来检测页面对于用户的可见性,即返回用户 ...
 - 线性回归(linear regression)
			
基本形式 最小二乘法估计拟合参数 最小二乘法:基于均方误差最小化来进行模型求解的方法称为“最小二乘法”(least square method) 即(左边代表 $\mathbf{\omega }$ 和 ...
 - Pandas 基础(8) - 用 concat 组合 dataframe
			
以各个城市的天气为例, 先准备下面的数据: 印度天气的相关信息: import pandas as pd india_weather = pd.DataFrame({ 'city': ['mumbai ...
 - MySQL简单查询语句练习
			
数据查询语法(DQL) DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端. 语法: SELECT selection_list /*要查询的列名称*/ F ...
 - pycharm鸡火
			
由于github被封杀,大虾把它挪到了gitee下面 /pengzhile/jetbrains-agent 主要是一个jar包,放在D:\Program Files\JetBrains\PyCharm ...
 - oracle数据库 concat 与 ||
			
1.简述: 通过几条sql语句来引入此问题 先新建一张表,插入几条数据,如下: CREATE TABLE tab1 (col1 VARCHAR2(6), col2 CHAR(6), col3 VARC ...
 - java常用类介绍
			
1 日期时间.Math.枚举 1.1 日期时间 计算机如何表示时间? GMT时间指格林尼治所在地的标准时间,也称为时间协调时(UTC),其他地区的时间都是相对于GMT时间的偏移. 北京位于东八区 = ...
 - three.js 第一篇:准备工作
			
demo展示:https://www.hanjiafushi.com/three/index.html 1:复习向量知识 2:学习矩阵知识 3:推荐先看webGL入门指南,对一些基础性的概念有所了解 ...