Firemonkey Listview 计算文字行高
来源:互联网 发布:知乎成都审核招聘 编辑:程序博客网 时间:2024/06/06 03:47
procedure TForm1.ListView1UpdateObjects(const Sender: TObject;
const AItem: TListViewItem);
var
TextR : TRectF;
DetailR: TRectF;
TextRHeight: integer;
DetailRHeight: integer;
begin
TextRHeight := 0;
DetailRHeight := 0;
if (AItem.Objects.TExtObject <> nil) and
(AItem.Objects.TextObject.Text <> '') then
begin
// 计算文字显示的区域
TextR := RectF(0, 0, AItem.Objects.TextObject.Width, 10000);
AItem.Parent.Canvas.MeasureText(TextR,
AItem.Objects.TextObject.Text,
AItem.Objects.TextObject.WordWrap,
[], TTextAlign.Leading, TTextAlign.Leading);
// 设定高度
TextRHeight := Trunc(TextR.Height);
end;
if (AItem.Objects.DetailObject <> nil) and
(AItem.Objects.DetailObject.Text <> '') then
begin
// 计算文字显示的区域
DetailR := RectF(0, 0, AItem.Objects.DetailObject.Width, 10000);
AItem.Parent.Canvas.MeasureText(DetailR,
AItem.Objects.DetailObject.Text,
AItem.Objects.DetailObject.WordWrap,
[], TTextAlign.Leading, TTextAlign.Leading);
// 设定高度
DetailRHeight := Trunc(DetailR.Height);
end;
AItem.Height := TextRHeight + DetailRHeight + 20;
end;
const AItem: TListViewItem);
var
TextR : TRectF;
DetailR: TRectF;
TextRHeight: integer;
DetailRHeight: integer;
begin
TextRHeight := 0;
DetailRHeight := 0;
if (AItem.Objects.TExtObject <> nil) and
(AItem.Objects.TextObject.Text <> '') then
begin
// 计算文字显示的区域
TextR := RectF(0, 0, AItem.Objects.TextObject.Width, 10000);
AItem.Parent.Canvas.MeasureText(TextR,
AItem.Objects.TextObject.Text,
AItem.Objects.TextObject.WordWrap,
[], TTextAlign.Leading, TTextAlign.Leading);
// 设定高度
TextRHeight := Trunc(TextR.Height);
end;
if (AItem.Objects.DetailObject <> nil) and
(AItem.Objects.DetailObject.Text <> '') then
begin
// 计算文字显示的区域
DetailR := RectF(0, 0, AItem.Objects.DetailObject.Width, 10000);
AItem.Parent.Canvas.MeasureText(DetailR,
AItem.Objects.DetailObject.Text,
AItem.Objects.DetailObject.WordWrap,
[], TTextAlign.Leading, TTextAlign.Leading);
// 设定高度
DetailRHeight := Trunc(DetailR.Height);
end;
AItem.Height := TextRHeight + DetailRHeight + 20;
end;
0 0
- Firemonkey Listview 计算文字行高
- 根据文字计算label宽和高
- Android 计算文字的宽高
- listview 行高设置
- listview固定行高
- iOS 根据文字动态计算控件的宽高
- Swift自动计算Label文字决定宽高的封装
- 动态计算Label的宽高+文字设置
- iOS 通过文字动态计算文本宽高
- 计算行高
- 动态计算行高
- iOS 计算行高
- listview 如何调整 行高
- listview行高的设置
- ListView 行高设置不起作用
- 解决scrollview与listview共存问题 计算listview的宽高(item中有imageview)
- 对文字和行高的理解
- Masonry自动计算行高
- 抓取软件输出的特定内容并按特定格式赋值给变量
- 【leetcode】【82】Remove Duplicates from Sorted List II
- bzoj3630 镜面通道 网络流
- JavaScript DateUtils
- checkio-pawn brotherhood
- Firemonkey Listview 计算文字行高
- 快速排序算法小结
- RXJava
- Jmeter性能测试实战视频教程
- windows环境下安装JDK并配置环境变量
- Java多态
- JQuery UI Layout
- 如何设计一个 iOS 控件?(iOS 控件完全解析)
- 递归