Delphi中如何动态的加入Label组件

我想用Label组件来模拟人,用串口通信,让Label组件随着外部的硬件的出现而出现,随硬件的移动而移动。哪位高手能帮我写下完整的代码呀?如果能够实现的话,会增加悬赏分!谢谢了!
谢谢回答,可是,程序有错: Undeclared identifier: 'label1'。我是Delphi初学者,所以很多细小简单的问题我都不太清楚,请指点一下!这里的代码应该是只创建了一个组件,没有实现它的移动吧?能不能让它跟外部硬件联系起来,随着外部的硬件的出现而出现,随硬件的移动而移动呀?

显示:Label1.Visible //TRUE FALSE
移动:Label1.Left //数值大小控制
下面的是随着 Label1.Left的变化移动的小例子

procedure TForm1.Button1Click(Sender: TObject);
var Label1:TLabel;
i:integer;
begin
Label1:=TLabel.Create(self);
Label1.Parent:=Form1;
Label1.Top:=20;
Label1.Left:=2;
Label1.Caption:='A';
for i:=0 to 20 do
begin
Application.ProcessMessages;
Label1.Left:=Label1.Left+i;
Sleep(100);
end;
end;
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-05-14
label1 :=TLabel.Create(self);
label1.parent := form1;
label1.top := 100;
...
第2个回答  2010-05-15
你不光是delphi初学者吧,如果连这个问题都解决不了,后面遇到的问题就太多了,先学好基础吧。

Delphi中如何动态的加入Label组件
显示:Label1.Visible \/\/TRUE FALSE 移动:Label1.Left \/\/数值大小控制 下面的是随着 Label1.Left的变化移动的小例子 procedure TForm1.Button1Click(Sender: TObject);var Label1:TLabel;i:integer;begin Label1:=TLabel.Create(self);Label1.Parent:=Form1;Label1.Top:=20;Label1.Left:=2...

delphi动态生成多个label控件
procedure TForm1.MyOnClick(Sender: Tobject);begin ShowMessage((Sender as TLabel).Caption+' is clicked');end;procedure TForm1.btn1Click(Sender: TObject);var i,n:Integer;lbl: TLabel;begin n:=6;for i:=1 to n do begin lbl:= TLabel.Create(Application);lbl.Parent := Self;...

delphi动态生成控件
vari:Integer;Lab:array of TLabel;beginif length(Lab)> 0 then \/\/判断是否已经创建,如果有就删除beginfor i:=0 to Length(Lab)-1 dobeginFreeAndNil(Lab[i]);end;end;SetLength(Lab,ADOQuery1.FieldCount);for i :=0 to ADOQuery1.FieldCount-1 dobeginLab[i]:=TLabel.Create(Self);L...

delphi 如何用label 来控制显示动态字幕 显示一条信息 这些信息是放 ...
动态变化的,可以根据当前数据库中提取到的clientDATASET来控制数组的大小,并循环赋值 var Arr:array of string;setlength(Arr,stu_tab.recordcount);stu_tab.first;for i =0 to stu_tab.recordcount -1 do begin arr[i]=stu_tab.FieldByName('stuname').AsString;stu_tab.next;end;...

DELPHI PANEL上面放的有很多LABEL ,如何点击到PANEL
1. 将 Panel 内的所有 Label 的 Click 事件,共用下面代码:procedure TForm1.Label1Click(Sender: TObject);begin Edit1.Text := TPanel(TLabel(Sender).Parent).Caption;end;2. 还有就是干脆让 Label 共用 Panel 的 Click 事件。

DELPHI 给动态创建的控件指定onclick事件处理过程,如何传递自己的参数...
label的onClick事件 对应的只有Sender:Tobject 一个参数 你的 LabOnClick(Sender:Tobject,msgStr:String);怎么也是对不起来的。所以不行 要么 1 重写一个label 2 我惯用的偷懒办法 newLabel.OnClick:=LabOnClick(Sender);然后每个label的hint不一样 每次点击 就获取其中的hint procedure TForm1....

delphi怎么一次性动态删除(释放)数个动态创建的组件?
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls;type TForm1 = class(TForm)Button1: TButton;procedure Button1Click(Sender: TObject);private { Private declarations } IsLableCreated:Boolean;Labels:array[0..2] of TLabel;public { Public ...

delphi用SQL有多少行数据就生成多少个label,并且每个label对应到指定的...
循环动态生成控件,设定好每个控件的位置规格,规范label控件的名字,以方便查找控件进行设定label的caption值,如第一行字段A,可设定名字为Label_a_001,,字段B,设定名字为Label_b_001,第二行字段A,可设定名字为Label_a_002,,字段B,设定名字为Label_b_002,这样可以通过循环用FindComponent对每行...

delphi StringGrid一行一行的增加表格,如何实现垂直滚动条一直跟着新增...
StringGrid1.RowCount:=StringGrid1.RowCount+1; \/\/追加一行 StringGrid1.Row:= StringGrid1.RowCount-1; \/\/行号跟进 Label1.Caption:='当前行:'+IntToStr(StringGrid1.RowCount); \/\/指示滚动条和行号同步 end;procedure TForm1.StringGrid1Click(Sender: TObject); \/\/点击某行时看看行号...

在delphi里面如何实现将lable拖到panel 上.
你想从Panel1 拖到Panel2 只能剪切+粘贴 因为只有这样才能重新给Parent属性赋值。运行状态:首先,Label不是TControl的子类,没有句柄,不能拖动。它继承自TGraphic,实际意义上起始只是一个图画。想要进行拖动,要选择一个TControl的控件,比如TShape。然后把Panel1,panel2的DockSite属性改为true。把T...

相似回答