你对数据库的操作很自信吗?

hymn 2001-06-12 08:46:00
我用adotable做access数据库连接.表如下:
编号 标题 正文

然后建立动态 label of array;
把 label[i].caption:='标题';

如何在label[i].click事件中显示:

当点击label[i]的caption时在一panel显示该标题的正文。
也就是说利用label[i].caption查询数据库,查到该标题时指针指向该记录。
然后就可以利用记录fields显示正文。

我用了locate,seek,lookup......就是错误!
各位大虾帮帮忙。最好是有事例。

deadend@yeah.net
联系。
...全文
106 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
hymn 2001-06-13
  • 打赏
  • 举报
回复
楼上二位大虾,是adotable,不是bde哦,可以再提示点吗???急哦。bu
weenyboy 2001-06-13
  • 打赏
  • 举报
回复
with ADOTable1 do
begin
if ADOTable1.Locate('标题',TLabel(Sender).Caption, [loCaseInsensitive]) then
Panel1.Caption := FieldByName('正文').AsString
else
Panel1.Caption := 'Not Found!';
end;
hymn 2001-06-12
  • 打赏
  • 举报
回复


cobi 2001-06-12
  • 打赏
  • 举报
回复
你的表有主键吗?如果没有主键,好象不能用locate。你的方法其实应该是没有错的。
weenyboy 2001-06-12
  • 打赏
  • 举报
回复
procedure TForm1.LabelClick(Sender: TObject)
begin
with Table1 do
begin
Close;
IndexFieldNames := '标题';
Open;
if FindKey([TLabel(Sender).Caption]) then
Panel1.Caption := FieldByName('正文').AsString
else
Panel1.Caption := 'Not Found!';
end;
end;

自己优化将索引指定到外面去
hymn 2001-06-12
  • 打赏
  • 举报
回复
是不是闲分太底了?
hymn 2001-06-12
  • 打赏
  • 举报
回复
高手来啊!!!!!!
hymn 2001-06-12
  • 打赏
  • 举报
回复
难道高手都睡觉觉了吗?
yp 2001-06-12
  • 打赏
  • 举报
回复
岂止在Win2000在NT中也一样,不过只需重新编译或者在程序中设置字体即可
hymn 2001-06-12
  • 打赏
  • 举报
回复
还有就是在Win2000里用label显示字符,用了autosize时,老是缩了一小点。不能完全显示字符
hymn 2001-06-12
  • 打赏
  • 举报
回复
诸位大虾有什么想法吗?

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧