两个TComboBox组件CarNo_Comb显示车号,Oil_Comb显示该车号的耗油率,CarNo_Comb的从数据库表填充数据的代码:
procedure TForm_Run.FormCreate(Sender: TObject);
var
query:TADOQuery;
begin
Run_DataS.DataSet:=Run_Manage.GetRunInfo;//Run_DataS为Dbgrid的DataSource组件
while not query.Eof do
begin
CarNo_Comb.Items.add(query.FieldValues['牌证号码']);
query.Next;
end;
CarNo_Comb.ItemIndex:=0;
/////////////////////////////////
函数Run_Manage.GetRunInfo
function GetCarInfo:TADOQuery;
var
sql :string;
begin
sql:='select * from 设备台帐登记表';
result:=DAHelper.ExeSqlQuery(sql);
end;
函数DAHelper.ExeSqlQuery
function ExeSqlQuery(sql:string):TADOQuery;
var
query:TADOQuery;
begin
try
//判断连接状态是否关闭, 若关闭则打开
if stClosed in Config.ADOCon.State then
Config.ADOCon.Open;
query:=TADOQuery.Create(nil);
query.Connection:=Config.ADOCon;
query.Close;
query.SQL.Clear;
query.SQL.Add(sql);
query.Open;
except
result:=nil;
end;
result:=query;
end;
在CarNo_Comb的Change事件里使Oil_Comb显示CarNo_Comb车号对应的耗油率,运行无错,但是CarNo_Comb没有显示值,请帮我修改一下,多谢
procedure TForm_Run.CarNo_CombChange(Sender: TObject);
begin
Oil_Comb.Text:=Run_Manage.GetOilInfo(CarNo_Comb.Text).DataSetField.DisplayText;//.FieldValues['耗油率'];
end;
procedure TForm_Run.FormCreate(Sender: TObject);
var
query:TADOQuery;
begin
Run_DataS.DataSet:=Run_Manage.GetRunInfo;//Run_DataS为Dbgrid的DataSource组件
while not query.Eof do
begin
CarNo_Comb.Items.add(query.FieldValues['牌证号码']);
query.Next;
end;
CarNo_Comb.ItemIndex:=0;
/////////////////////////////////
函数Run_Manage.GetRunInfo
function GetCarInfo:TADOQuery;
var
sql :string;
begin
sql:='select * from 设备台帐登记表';
result:=DAHelper.ExeSqlQuery(sql);
end;
函数DAHelper.ExeSqlQuery
function ExeSqlQuery(sql:string):TADOQuery;
var
query:TADOQuery;
begin
try
//判断连接状态是否关闭, 若关闭则打开
if stClosed in Config.ADOCon.State then
Config.ADOCon.Open;
query:=TADOQuery.Create(nil);
query.Connection:=Config.ADOCon;
query.Close;
query.SQL.Clear;
query.SQL.Add(sql);
query.Open;
except
result:=nil;
end;
result:=query;
end;
在CarNo_Comb的Change事件里使Oil_Comb显示CarNo_Comb车号对应的耗油率,运行无错,但是CarNo_Comb没有显示值,请帮我修改一下,多谢
procedure TForm_Run.CarNo_CombChange(Sender: TObject);
begin
Oil_Comb.Text:=Run_Manage.GetOilInfo(CarNo_Comb.Text).DataSetField.DisplayText;//.FieldValues['耗油率'];
end;
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货