读书人

ADOQuery查询筛选,该如何解决

发布时间: 2012-02-10 21:27:42 作者: rapoo

ADOQuery查询筛选
在窗体里添加一个组合框ComboBox1,如何在下拉列表中,
从一张有很多批号的表里筛选出满足条件的批号。
窗体里我添加了一个 ADOQuery 、
下面是我写的两种方法的代码但是下拉列表没有数据:
第一种方法:
void __fastcall TForm1::FormCreate(TObject *Sender)
{
AnsiString sql;
ADOQuery-> Close();
ADOQuery-> SQL-> Clear();
sql= "Select 腐蚀批号 from 腐蚀箔成绩单_高压tmp where 机号> 'EH39 ' " ;
ADOQuery-> SQL-> Add(sql);
ADOQuery-> Open();
}

下拉列表中没有数据。为什么?是不是ADOQuery用法不正确.下面是我的窗体。


[解决办法]
ComboBox1的值显示你筛选的值吗?
现在是你只是把数据查询出来了,但是没有在ComboBox1显示出来
你搜索下动态给ComboBox1添加数据,csdn很多的例子
[解决办法]
如果你用的DBComboBox1 ,设置DBComboBox1属性 直接绑定数据源就可以了
DBComboBox1->DataSource = Datasource1 ;

如果用的ComboBox2 需要手动添加数据:

C/C++ code
void __fastcall TForm1::FormCreate(TObject *Sender) {  AnsiString sql;  ADOQuery->Close();  ADOQuery->SQL->Clear();  sql="Select 腐蚀批号  from 腐蚀箔成绩单_高压tmp where 机号>'EH39'" ;  ADOQuery->SQL->Add(sql);  ADOQuery->Open();  for(ADOQuery->First();!ADOQuery->Eof;ADOQuery->Next()) {   ComboBox1->Items->Add(ADOQuery->FieldByName("腐蚀批号")->AsString.Trim()); } 

读书人网 >C++ Builder

热点推荐