如何通过dbrid的title名得到字段名(50分)

  • 主题发起人 主题发起人 liuin
  • 开始时间 开始时间
L

liuin

Unregistered / Unconfirmed
GUEST, unregistred user!
例:
title: fieldname:
产品 chanpin
数量 shuliang
单价 danjia

在combobox中选择产品或数量或单价 得到 fieldname
 
dbgrid的column有fieldname属性.

但在combobox中选择产品,想得到chanpin可能就复杂一些,
你可以建立一个Tstring类型的变量。
combobox.items.add('产品');
combobox.items.add('数量');
combobox.items.add('单价');

然后响应的tstrComboBox也做对应的处理
tstrComboBox:=TstringList.Create;
tstrComboBox.add(chanpin);
tstrComboBox.add(chanpin);
tstrComboBox.add(chanpin);

然后对选择的comboBox的值,再从tstrComboBox中找到响应的fieldname.




 
for i:=0 to DataModule3.ADOQuery1.FieldCount-1 do
self.ComboBox1.Items.Add(DBGrid1.Columns.Title.Caption);
 
對于這個問題,我認為有兩种情形會出現.

1.dbgrid的各column的caption都不一致<即唯一>, 這時處理的方法比較簡單.
當單擊combobox的,將其值做一次与table.fielddisplay的遍歷核對.這樣就可以找出相應的
fieldname了.

2.dbgrid的各column的caption可能會出現重复,這樣就得建立一個數組變量來處理了.處理
的方式應由數組的位置來決定,而非是遍歷循環來核對名稱了.
 
虽不是很满意,还是给分了
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
915
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部