Delphi combobox连数据库,先有一个combobox选年级,按按钮後,另一个combobox中可选该年级的学生姓名

请问要如何实现,先有一个combobox1选年级,按按钮後,另一个combobox2中可选该年级的学生姓名Table名称为学生基本资料,对应的属性有姓名丶年级似乎要写SQ... 请问要如何实现,先有一个combobox1选年级,按按钮後,另一个combobox2中可选该年级的学生姓名

Table名称为学生基本资料,对应的属性有姓名丶年级

似乎要写SQL,但小弟不知要如何判断使用者选到哪个item,例如一年级丶二年级...
也不知combobox2要如何依据combobox1,显示数据库内对应年级姓名的资料
按下按钮後,再把使用者所选的姓名及年级,自动放在Label中

求各位高手帮解惑,卡好久了,希望能有代码
展开
 我来答
liu55721
2012-08-08 · TA获得超过922个赞
知道大有可为答主
回答量:1861
采纳率:100%
帮助的人:880万
展开全部
这是要写代码的,你的思路很正确,有人喜欢用DBcombobox组件来直接连接表中的字段,这样就会出现很重复项.
这种方法在编辑数据和查询数据的过程都可以使用,有时不用敲击大键盘,只用小键盘就可以新增一条记录.查询数据使用这种方法更妙,在第一个COMBOBOX中选择一项,界面表格中的数据记录就少了很多,在再第二个BOX中选择一项,界面表格中的数据记录又少了很多,最后只剩下你要找的那条记录了.
这种效果的实现,界面需要COMBOBOX组件若干,ADOdataset组件一个(用二个最好),网格组件一个,以学校名称,年级,班,组,学生姓名这张表为例.当放有这些组件的窗体显示时(显示事件),为第一个COMBOBOX组件加载学校名称,其它不管,当第一个COMBOBOX组件发生更新事件时,再为第二个COMBOBOX组件加载年级,如此类推,一直加载到学生姓名.
它的机制是:用一个ADODATASET组件通过数据源组件与界面上的网格组件连接,让它显示操作的数据表中数据.另外一个ADODATASET组件专门用来为COMBOBOX加载数据项.
没有时间,有事,下次再说
众口说车
2012-08-09 · TA获得超过2323个赞
知道大有可为答主
回答量:3503
采纳率:50%
帮助的人:1504万
展开全部
在combobox 的onchange事件里定义一个事件,
网络中,更新快时可以用SQL方法去做..MYDB为DBQUERY控件
with myDB do
begin
sql.close;
sql.clear;
sql.text:='select name from table where grade='''+combobox1.text+'''';
sql.prepare;
sql.open;

end;
局域网或本机更新慢时可用SQL的过滤去做...方法都很简单,,,,

MYDB.filtered:=false;
MYDB.filter:='name='+combobox.text;
MYDB.filtered:=true;

手头没有DELPHI ,可能语法不准确.....
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式