您的位置:首页 > 编程语言 > Delphi

delphi ADVStringGrid 怎么显示下拉列表

2010-11-30 10:30 337 查看

delphi ADVStringGrid 怎么显示下拉列表

Delphi 2010-11-30 09:20:41 阅读0 评论0 字号:大小 订阅
AdvStringGrid_IDX.ControlLook.DropDownAlwaysVisible:=True; 显示下拉列表

procedure TForm_IndexManager.AdvStringGrid_IDXComboChange(Sender: TObject;
ACol, ARow, AItemIndex: Integer; ASelection: String);
var
jstrMEA_TYPE_ID:string;
begin
//ShowMessage('sdfg');
case ACol of
10:begin
//showmessage(IntToStr(AItemIndex));
jstrMEA_TYPE_ID:=PMEA_TYPERec(AdvStringGrid_IDX.Combobox.Items.Objects[AdvStringGrid_IDX.Combobox.ItemIndex])^.F_MEA_TYPE_ID;
if DataSetUR_SYS_MEA <> nil then
begin
DataSetUR_SYS_MEA.Data:=null;
vdm.GetSQLDataSet(' select * from UR_SYS_MEA where MEA_TYPE_ID=? ',VarArrayOf(['S|'+jstrMEA_TYPE_ID]),DataSetUR_SYS_MEA);
end;
end;
end;
//
end;

procedure TForm_IndexManager.AdvStringGrid_IDXHasComboBox(Sender: TObject;
ACol, ARow: Integer; var HasComboBox: Boolean);
begin
HasComboBox :=(ACol = 7) or (ACol = 9) or (ACol = 10) or (ACol = 11) ;
end;

procedure TForm_IndexManager.AdvStringGrid_IDXGetEditorType(
Sender: TObject; ACol, ARow: Integer; var AEditor: TEditorType);
var
MyDataTypeRec:PDataTypeRec;
MyDictRec:PDictRec;
MyMEA_TYPERec:PMEA_TYPERec;
MyMEARec:PMEARec;
begin
with AdvStringGrid_IDX do
case ACol of
7:begin
aEditor := edComboList;
ClearComboString;
New(MyDataTypeRec);
MyDataTypeRec.FDataType_ID:='C';
MyDataTypeRec.FDataType_Name:='字符';
AdvStringGrid_IDX.Combobox.Items.AddObject(MyDataTypeRec.FDataType_Name,TObject(MyDataTypeRec));
New(MyDataTypeRec);
MyDataTypeRec.FDataType_ID:='N';
MyDataTypeRec.FDataType_Name:='数值';
AdvStringGrid_IDX.Combobox.Items.AddObject(MyDataTypeRec.FDataType_Name,TObject(MyDataTypeRec));
New(MyDataTypeRec);
MyDataTypeRec.FDataType_ID:='D';
MyDataTypeRec.FDataType_Name:='日期';
AdvStringGrid_IDX.Combobox.Items.AddObject(MyDataTypeRec.FDataType_Name,TObject(MyDataTypeRec));
New(MyDataTypeRec);
MyDataTypeRec.FDataType_ID:='F';
MyDataTypeRec.FDataType_Name:='附件';
AdvStringGrid_IDX.Combobox.Items.AddObject(MyDataTypeRec.FDataType_Name,TObject(MyDataTypeRec));
New(MyDataTypeRec);
MyDataTypeRec.FDataType_ID:='P';
MyDataTypeRec.FDataType_Name:='图片';
AdvStringGrid_IDX.Combobox.Items.AddObject(MyDataTypeRec.FDataType_Name,TObject(MyDataTypeRec));
end;
9:begin //枚举字典
aEditor := edComboList;
ClearComboString;
with AdvStringGrid_IDX.Combobox do
begin
Items.Clear;
with DataSetDICT do
begin
First;
while not Eof do
begin
New(MyDictRec);
MyDictRec.FDict_ID:=Fieldbyname('DICT_ID').AsString;
MyDictRec.FDict_Name:=Fieldbyname('DICT_NAME').AsString;
Items.AddObject(MyDictRec.FDict_Name,TObject(MyDictRec));
next;
end;
end;
end;
end;
10:begin //计量单位类型
aEditor := edComboList;
ClearComboString;
with AdvStringGrid_IDX.Combobox do
begin
Items.Clear;
with DataSetUR_SYS_MEA_TYPE do
begin
First;
while not Eof do
begin
New(MyMEA_TYPERec);
MyMEA_TYPERec.F_MEA_TYPE_ID:=Fieldbyname('MEA_TYPE_ID').AsString;
MyMEA_TYPERec.F_MEA_TYPE_NAME:=Fieldbyname('MEA_TYPE_NAME').AsString;
MyMEA_TYPERec.F_IS_CHG:=Fieldbyname('IS_CHG').AsString;
Items.AddObject(MyMEA_TYPERec.F_MEA_TYPE_NAME,TObject(MyMEA_TYPERec));
next;
end;
end;
end;
end;
11:begin //计量单位
aEditor := edComboList;
ClearComboString;
with AdvStringGrid_IDX.Combobox do
begin
Items.Clear;
if DataSetUR_SYS_MEA.Data<> null then
begin
with DataSetUR_SYS_MEA do
begin
First;
while not Eof do
begin
New(MyMEARec);
MyMEARec.F_MEA_TYPE_ID:=Fieldbyname('MEA_TYPE_ID').AsString;
MyMEARec.F_MEA_UNIT_ID:=Fieldbyname('MEA_UNIT_ID').AsString;
MyMEARec.F_MEA_NAME:=Fieldbyname('MEA_NAME').AsString;
Items.AddObject(MyMEARec.F_MEA_NAME,TObject(MyMEARec));
next;
end;
end;
end;
end;
end;
end;
end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: