大家来找毛病
我添加了ADOConnection ADOQuery 想动态添加ComboBox的选项
classCB-> Clear();
if(ADOQuery1-> Active)
ADOQuery1-> Close();
ADOQuery1-> SQL-> Clear();
ADOQuery1-> SQL-> Add( "select * from TB_MyClass where 年级 = "+greadeCB-> Text+ " ");
ADOQuery1-> Open();
ADOQuery1-> First();
while(!ADOQuery1-> Eof)
{
classCB-> Items-> Add(ADOQuery1-> FieldByName( "班级 ")-> AsString.Trim()) ;
ADOQuery1-> Next();
}
怎么去点击classCB的时候什么也没有
[解决办法]
ADOQuery1-> SQL-> Add( "select * from TB_MyClass where 年级 = ' "+greadeCB-> Text+ " ' ");
[解决办法]
另外我喜欢使用
ADOQuery1-> Fields-> FieldByName( "班级 ")-> AsString;
[解决办法]
classCB-> Clear();
if(ADOQry1-> Active)
ADOQry1-> Close();
ADOQry1-> SQL-> Clear();
ADOQry1-> SQL-> Add( "select OrderID from Orders ");
ADOQry1-> Open();
ADOQry1-> First();
while(!ADOQry1-> Eof)
{
classCB-> Items-> Add(ADOQry1-> Fields-> Fields[0]-> AsString.Trim()) ;
ADOQry1-> Next();
}
直接用你的原代码
连接northwind数据库
经过测试可以正常显示 no problem
so 请检查数据库返回
[解决办法]
另外 经过我检测,ADOQuery对象,在Open的时候,应该会关闭 然后再打开 so 貌似没有必要再去关闭之,但是出于严密性这样是正确得
我一般是直接指定ADOQuery-> SQL-> Text = sql;
这样就不用clear啦
[解决办法]
感觉像在这:
classCB-> Items-> Add(ADOQuery1-> FieldByName( "班级 ")-> AsString.Trim())
[解决办法]
LZ你的代码写在那里?Form1::Create?
[解决办法]
我的代码写在classCBchange里面
===============================
好问题出来了,写在greadeCBchange里还差不多。