各位高手帮帮忙!

chamberlin 2001-06-05 01:28:00
我要建一个开箱的数据库.如果有一千个箱的话,LABEL就要有一千个,它们是代表箱号(如:0001,0002....等等.)如果有人开0001号箱的话,那么所代表的LABEL的颜色就改变为红.如果0001号箱有人结帐走了的话,那么LABEL0001的颜色就改变为黑.
我就是不懂得如何在EDIT里面输入0002或0005的话,按确定按钮后,相对应的LABEL就改变颜色.
请高手们帮我想个办法!
...全文
77 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
chamberlin 2001-06-07
  • 打赏
  • 举报
回复
to hzb(Explorer) 
请问你,这种方法为何书上没有啊?请问要看什么书才有象这样的方法的介绍?
hzb 2001-06-06
  • 打赏
  • 举报
回复
最好先判断一下对应的label是否存在:
var
l:TLabel;
begin
...
l:=FindComponent('LABEL'+edit1.text) as TLabel;//假如label放在Form上,并且名字是LABLEXXXX,XXXX为0001、0002....
if l<>nil then
l.font.color:=clred;

...
end;
hzb 2001-06-06
  • 打赏
  • 举报
回复
Sorry,拼写错误,应该是FindComponent。另外,放在其他容器上也可以用这种方法。
hxshanji 2001-06-06
  • 打赏
  • 举报
回复
把出错信息告诉人家啊。
chamberlin 2001-06-06
  • 打赏
  • 举报
回复
to hzb(Explorer) 
为何我按你写的老是出错呢?在I:=FindCompontent('LABEL'+edit1.text) as TLabel;这段.
你能否写具体一点?
neubird 2001-06-05
  • 打赏
  • 举报
回复
来迟一步!
hzb 2001-06-05
  • 打赏
  • 举报
回复
是很容易
var
l:TLabel;
begin
...
l:=FindCompontent('LABEL'+edit1.text) as TLabel;//假如label放在Form上,并且名字是LABLEXXXX,XXXX为0001、0002....
l.font.color:=clred;

...
end;
wonderxin 2001-06-05
  • 打赏
  • 举报
回复
改变颜色还不容易?
如:label.font.color:=clred;//字体颜色为红色(黑色:clBlack)
label.color:=clred;//背景颜色为红色

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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