![](/img/trans.png)
[英]How to change background color of FMX.TGrid row depend on value in XE4
[英]Delphi XE4 TGrid how do I get the value of a cell in the row I double clicked?
我正在使用TGrid类在XE4中编写FMX程序。 我想从我在TGrid中双击的行的特定列中提取值。 网格从数据库表中加载了字符串(使用实时绑定)。
例如,假设TGrid显示5个x 10列,我对第9列中的值感兴趣。如果我双击第2行中的任何位置,我想要放置cell(row = 2,col = 9)的值在TEdit中。
我可能会简单地看待事物,但是在TGrid中我找不到任何可以根据其(行,列)获取单元格值的函数。
您可以使用受保护的方法GetValue
。
function GetValue(Col, Row: Integer): TValue; virtual;
然后使用ColumnIndex
和Selected
属性,您可以获得当前col和row。
试试这个
type
TGridClass=class(TGrid);
procedure TForm1.Grid1DblClick(Sender: TObject);
begin
ShowMessage(TGridClass(Sender).GetValue(TGrid(Sender).ColumnIndex, TGrid(Sender).Selected).ToString);
end;
或者你可以使用类似的东西
Grid1.Columns[Col].Controls[Row]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.