DbGrideh 列增加 下拉 但是 同一列 步同行的下拉选项 不同
Delphi 的 DbGrideh 某一列增加 下拉选择, 但是 不同行的下拉选项 不同
例如,数据源两个字段 ,分类 分值
三行数据,分类分别为 服装、形象、态度,
服装 分值从(1-达标,0-不达标 中选择)
形象 分值从(0.5-达标,0-不达标 中选择)
态度 分值从(2-达标,0-不达标 中选择)
该怎样实现?
(根据分类值 动态给 Dbgrideh增加picklist,keylist 时 选择后 存在显示不正确的问题。)
[解决办法]
在DataSource的OnDataChange事件间添加。
procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
TStringList(DBGridEh1.Columns[1].PickList).Clear;
TStringList(DBGridEh1.Columns[1].PickList).Add('aabc');
end;
[解决办法]
没安装该控件。
但不支持楼上朋友的看法,因为下拉应该是整列相同的,在OnDataChange事件弄,只会最后一次事件决定下拉的内容,这使得点击不同的行也是同样的下拉内容。
我认为,应在单元的鼠标点下事件(假如有这事件。若无的话,就在表格的鼠标点下事件)里弄,该事件以当前行的分类来动态产生下拉内容(当然是先清除后建立)。