flexsistemas Aprendiz

Registrado: Terça-Feira, 29 de Outubro de 2013 Mensagens: 121 Localização: Caxias do Sul
|
Enviada: Ter Ago 19, 2014 1:55 pm Assunto: TGrid com Coluna Alinhada a Direita [RESOLVIDO] |
|
|
Olá,
Estou tentanto a todo custo alinhar uma coluna que contém o preço unitário de venda de um produto.
Olhei esse código bem simples mas não consigo colocar isso em prática.
É bem isso que preciso, como faço?
Código: |
unit UFormatoColunasGrid;
interface
uses
FMX.Grid,
System.RTTI,
FMX.Controls,
Classes;
type
TMoneyCell = class(TTextCell)
private
FFloatValue: Single;
protected
procedure SetData(const Value: TValue); override;
public
constructor Create(Owner: TComponent); override;
end;
TMoneyColumn = class(TColumn)
protected
function CreateCellControl: TStyledControl; override;
end;
implementation
uses
FMX.Types,
SysUtils,
FMX.Objects,
System.UIConsts;
{ TMoneyColumn }
function TMoneyColumn.CreateCellControl: TStyledControl;
begin
Result := TMoneyCell.Create(Self);
TMoneyCell(Result).OnTyping := DoTextChanged;
TMoneyCell(Result).OnChange := DoTextChanged;
TMoneyCell(Result).OnExit := DoTextExit;
end;
{ TMoneyCell }
constructor TMoneyCell.Create(Owner: TComponent);
begin
inherited;
StyledSettings := StyledSettings - [TStyledSetting.FontColor];
TextAlign := TTextAlign.Trailing;
end;
procedure TMoneyCell.SetData(const Value: TValue);
begin
FFloatValue := Value.AsType<Single>;
inherited SetData(Format('%m', [FFloatValue]));
if (FFloatValue < 0) then
FontColor := claRed
else
FontColor := claBlack;
end;
end.
|
Editado pela última vez por flexsistemas em Sex Ago 22, 2014 2:33 pm, num total de 1 vez |
|