delphi DBGrid 其他行的都过滤掉,只保留个红色圈中的那一行

 我来答
385878234
2011-10-06 · 超过24用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:59.2万
展开全部
你dbGrid1的DataSource的dataSet,如果来源于adoTable的话,可以在界面那里把adoTable1的filter设置为Category='Snapper',然后将其filter改为true,无需其它代码就可以在编程界面那里看得见效果;若要在运行过程中达到此目的,则须使用如下代码:
adotable1.filtered := false; //dbGird好像没有filtered这个属性,记不太清楚了
adotable1.filter := 'Category=''Snapper''';
adotable1.filtered := true;
如果dataSet来源于adoquery,可以直接在界面那里修改adoquery1的sql属性为:
select * from b1 where category='snapper' //
若想自己写代码:
with adoqurry1 do
begin
close;
sql.clear;
sql.text:=' select * from b1 where category=''snapper''';
open;
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fyyeyip
2011-10-07
知道答主
回答量:28
采纳率:0%
帮助的人:19.6万
展开全部
delphi中,dbgrid没有过滤功能的,一般要通过操纵数据源的方法来实现
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lovesky0414
2011-10-05 · TA获得超过3353个赞
知道大有可为答主
回答量:1610
采纳率:66%
帮助的人:1568万
展开全部
dbgrid.filtered := false;
dbgrid.filter := '第一列字段名=第一列第一行的值';
dbgrid.filtered := true;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
darlingks
2011-10-05 · TA获得超过222个赞
知道小有建树答主
回答量:638
采纳率:75%
帮助的人:171万
展开全部
//在查询语句中写以下代码:
with adoqurry1 do begin
close;
sql.clear;
sql.text:=' select * from b1 where category='snapper' ';
open;
end;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式