试试这个。很灵活的,组合查询你自己加一个条件就OK了?
//查询联系人的信息
procedure Thhtx.BtnSearchClick(Sender: TObject);
begin
if trim(SearchExp.text)='' then
Begin
MessageBox(handle,'查询表达式不能为空,请确认查询表达式是否为空!',
'提示信息',MB_OK+MB_ICONINFORMATION);
Exit;
End;
try
Table1.Filtered :=False;
Table1.OnFilterRecord:=FilterRecord;
finally
Table1.Filtered :=True;
end;
hhtx.SearchExp.Text :='';
end;procedure Thhtx.FilterRecord(DataSet: TDataSet; var Accept: Boolean);
var
Exp,FieldValue:String;
begin
Exp:=trim(SearchExp.Text);
if RadName.Checked =True then
FieldValue:=Table1.fieldbyname('姓名').AsString
else
if RadNickName.Checked =True then
FieldValue:=Table1.fieldbyname('昵称').AsString
else
FieldValue:=Table1.fieldbyname('编号').AsString;
if pos(uppercase(Exp),uppercase(FieldValue))<>0 then
Accept:=true
else
Accept:=False;
end;
//查询联系人的信息
procedure Thhtx.BtnSearchClick(Sender: TObject);
begin
if trim(SearchExp.text)='' then
Begin
MessageBox(handle,'查询表达式不能为空,请确认查询表达式是否为空!',
'提示信息',MB_OK+MB_ICONINFORMATION);
Exit;
End;
try
Table1.Filtered :=False;
Table1.OnFilterRecord:=FilterRecord;
finally
Table1.Filtered :=True;
end;
hhtx.SearchExp.Text :='';
end;procedure Thhtx.FilterRecord(DataSet: TDataSet; var Accept: Boolean);
var
Exp,FieldValue:String;
begin
Exp:=trim(SearchExp.Text);
if RadName.Checked =True then
FieldValue:=Table1.fieldbyname('姓名').AsString
else
if RadNickName.Checked =True then
FieldValue:=Table1.fieldbyname('昵称').AsString
else
FieldValue:=Table1.fieldbyname('编号').AsString;
if pos(uppercase(Exp),uppercase(FieldValue))<>0 then
Accept:=true
else
Accept:=False;
end;
解决方案 »
- 新手求助!!!数据写入,导出TXT文本后,系统报错the specified file was not found
- 高分求助
- 关于窗体退出的错误(有关内存的吧?)
- 高手请进,有个Txt文件,格式如下,我要修改其中的IP地址,请问那种方法比较简单?????
- 保存TStringGrid控件的问题
- 如何用fastreport实现主从表的打印?
- 调用TFileStream.Write(lpData, 1024), 其中lpData的类型为PChar, 为什么调用后返回值总是0?
- TtreeNode.data 如何写数据
- 我测试一下
- 对象我怎么理解才能简单点,我是如此愚笨。
- 单机版的连接access数据库,用什么方法最好最简单?
- 指点指点,为什么我的WebSnap程序有问题?
但是主做这个的要用table
我也没有办法
以前很少接触table