我正在尝试使用我的数据库中的学校名称填充我的组合框。我使用以下代码对每个组合框的程序进行了硬编码:
procedure TfrmSportsDay.PopulateCmbOpponentASE;
var
sLine: String;
begin
cmbOpponentASE.Items.Clear;
with DM_Sport do
begin
tblSchools.First;
while not tblSchools.eof do
begin
sLine := tblSchools['SchoolName'];
cmbOpponentASE.Items.Add(sLine);
tblSchools.Next;
end;
end;
end;
这会通过我手动输入名称来填充特定的组合框,有没有一种方法可以在程序中输入组合框的名称,因此我有 1 个程序来填充组合框,而不必为每个程序编写一个?
例如
Private
Procedure PopulateCmb(sComboBoxName : String);
Procedure PopulateCmb(sComboBoxName : String);
var
sLine: String;
begin
{sComboBoxName}.Items.Clear;
with DM_Sport do
begin
tblSchools.First;
while not tblSchools.eof do
begin
sLine := tblSchools['SchoolName'];
{sComboBoxName}.Items.Add(sLine);
tblSchools.Next;
end;
end;
end;
而不是传递带有组合框名称的参数,只需将组合框变量作为参数传递(在您展示的代码中,它是 cmbOpponentASE)。
procedure PopulateCmb(Combo : TComboBox);
var
sLine: String;
begin
Combo.Items.Clear;
with DM_Sport do
begin
tblSchools.First;
while not tblSchools.eof do
begin
sLine := tblSchools['SchoolName'];
Combo.Items.Add(sLine);
tblSchools.Next;
end;
end;
end;
并这样称呼它:
PopulateCmb(cmbOpponentASE);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句