delphi DBGrid控件问题

[复制链接]
查看11 | 回复3 | 2010-7-7 19:09:04 | 显示全部楼层 |阅读模式
大家好!
我是新手刚刚接触DELPHI请大家帮帮忙!
我用了ADOConnection控件,ADOQuery控件,DataSource控件,和DBGrid控件,
数据库是SQL SERVER的,现在问题是数据库连接上了DBGrid也显示出数据库中的数据,我现在想在DBGrid控件中选择某条数据单独的把这条数据ID给取出来
,网上搜索的信息是在DBGrid1CellClick事件中写Query.FieldByName('id').AsString;可是我用的是ADOQuery控件没有FieldByName这个函数啊,然后我就用了TQuery这个控件可以点出FieldByName这个函数,但是DataSource控件的DataSet属性又绑定不了找不到TQuery,哎!搞的我现在真是晕晕的,他们之间到底是什么关系啊,怎么实现我想取选中某条数据的ID啊

回复

使用道具 举报

千问 | 2010-7-7 19:09:04 | 显示全部楼层
楼主 首先你有个错误的认识AdoQuery是有Fieldbyname的方法的delphi 的IDE环境会自动提示这个方法不过如果你这样写ID:=ADOQuery.FieldByName('id').AsString;是不提示的,但是代码是对的如果你想让它提示你直接这样写可定提示的ADOQuery.FieldByName('id').AsString;如果楼主还有问题hi我
回复

使用道具 举报

千问 | 2010-7-7 19:09:04 | 显示全部楼层
adoquery控件是没有fieldbyname这个属性的,我给你代码,你看下就明白了。varsql:string;beginsql:='select * from tablename where 字段A = ''' + '中国' + '''';adoquery1.close;adoquery1.sql.clear;ado
回复

使用道具 举报

千问 | 2010-7-7 19:09:04 | 显示全部楼层
楼上的就OK了 DBGrid在数据滚动选择的时候ADOQuery的指针也会跟着走你还可以在ADOQuery的OnAfterScroll事件中写 ID := DataSet.FieldByName('ID').AsString; ID声明为string类型那么ID就是你要的东东了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行