如何用组合框(comboBox)实现筛选从表功能 比如 歌手表与歌曲表是主从表关系 现在要求用一个下拉组合框显示所有歌手列表,当选择某位歌手时,用DBGrid来显示当前歌手对应的所有歌曲,请问怎么实现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 procedure TForm1.ComboBox1Select(Sender: TObject);begin DBGrid1.DataSource.DataSet.Close; DBGrid1.DataSource.DataSet.Filter := '歌手 = ''' + TComboBox(Sender).Text + ''''; DBGrid1.DataSource.DataSet.Filtered := true; DBGrid1.DataSource.DataSet.Open;end; procedure TForm1.ComboBox1Select(Sender: TObject);begin with adoquery1 do begin close; sql.clear; sql.text := 'select * from yourtable where 歌手 = ' + quotedstr(combobox1.text); open; end;end; 在ComboBox1Click里写sql语句不就行了 用DBLOOOKUPCOMBOBOX(好像是这样写),将其属性lookup datasource设为歌手数据库的datasource,将lookupfield设为歌手名,然后,再将歌手数据库和歌曲数据库做成主从表就行了。 关于错误处理 初学者 我是新手,攒了些问题,请帮帮忙,谢了 dbchart 为什么在运行时出现不了图形? 一个写入ini文件的问题,不是很难! 有关REALPLAY 做过薪资,考勤的快进来,加分,请客吃饭 --> 如何从 ReadFile 按行读出文本? I wait you! INTERBASE有什么用途,怎么使用? 使用SOAP怎样在客户端判断已经连接到服务端(服务端可用)(WEB SERVER+SOAP) 求教关于《北京浮生记》程序的一些思路-怎么来处理随机事件
begin
DBGrid1.DataSource.DataSet.Close;
DBGrid1.DataSource.DataSet.Filter := '歌手 = ''' + TComboBox(Sender).Text + '''';
DBGrid1.DataSource.DataSet.Filtered := true;
DBGrid1.DataSource.DataSet.Open;
end;
begin
with adoquery1 do
begin
close;
sql.clear;
sql.text := 'select * from yourtable where 歌手 = ' + quotedstr(combobox1.text);
open;
end;
end;