0

我有一个带有 cxgrid 的 delphi 表单,网格连接到查询/数据源。

如果数据库表中的一个字段是一个整数,我有没有在 cxgrid 列上将整数显示为字符串?

e.g. 1 = January
     2 = February
     3 = March

等等。

谢谢,

4

2 回答 2

1

是的,有这种可能。

TcxEditRepository接下来将组件放入您的网格。双击它,您应该会看到带有“添加...”按钮的空窗口。单击它并从可用组件列表中选择ImageComboBox

现在,您需要编辑Items此组合的属性。

在此处输入图像描述

填满所有行后,转到您的视图(TcxGridDBTableViewTcxGridTableView)并选择包含整数值的列。此列有一个名为 的属性RepositoryItem。如果你做的一切都正确,你应该能够选择你之前创建的存储库项目(ImageComboBox)。选择它后,您的列应立即显示月份名称而不是数字。

于 2015-08-06T12:17:01.077 回答
0

其他方法是覆盖cxGridOnGetDisplayText事件。你可以这样做:

procedure TSomeForm.GetDisplayText(Sender: TcxCustomGridTableItem;
  ARecord: TcxCustomGridRecord; var AText: string);
var
    nVal : Integer;
begin
    nVal := ARecord.Values[Sender.Index];    
    case nVal of
    1: AText := "January";
    //and so on
    end;
end;
于 2015-08-06T12:23:57.073 回答