全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1936
推到 Plurk!
推到 Facebook!

請教Label問題

答題得分者是:tuga
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-09-19 11:06:25 IP:114.32.xxx.xxx 訂閱
各位前輩
使用變數產生10個數,分別填入Label1.caption~label10.caption中,但我不知道該如何填入,請各位指導

[code delphi]
for i:=1 to 10 do
begin

repeat
randomize;
k:=random(9) 1;

until (k <> m );
m:=k;

//就是這裏,不知如何做
//label1~10我都拉好了

//label i .Caption:=j; //這行會產生錯誤

end;
[/code]

------
環境 DELPHI 7
Delphi 新手,請多指教
tuga
高階會員


發表:16
回覆:109
積分:120
註冊:2002-07-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-09-19 11:23:49 IP:122.116.xxx.xxx 訂閱
var   la : TLabel ;


for i := 1 to 10 do
begin
la := TLabel(FindComponent('label' IntToStr(i)));
la.caption := ' 我是第' inttostr(i) '名' ;

end;
heartgame0
一般會員


發表:2
回覆:29
積分:11
註冊:2008-07-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-09-20 22:39:13 IP:61.62.xxx.xxx 訂閱
我一直想問的,dbeditX.color多個判斷變化,

一直不知道從何問起,從何找起,很久以前有看過類似下面的,忘了在那,

用了笨方式一個一個去定義(在這裡看了幾篇別種物件,也都教笨方法),看到這一篇,應該可以試試了。
謝謝
===================引 用 tuga 文 章===================
var la : TLabel ;


for i := 1 to 10 do
begin
la := TLabel(FindComponent('label' IntToStr(i)));
la.caption := ' 我是第' inttostr(i) '名' ;

end;
------
資訊業是永遠不能停止學習的行業!
但是進步都只是一點點一點點!
==可以不用理我!因為我的程度只有2成,或許不到!!
==我只會拉拉元件,打打迴圈,打打條件判斷,連連資料庫,rs232送送訊號,印表機簡單列印。
只有寫寫小小的點餐軟體(為何想寫,因為叫人家改的小東西,都ooxx,是會付錢的又不是沒錢,但是理由還是一堆)
tokiama
一般會員


發表:34
回覆:60
積分:23
註冊:2009-04-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-09-20 23:12:46 IP:220.140.xxx.xxx 訂閱
這方法是類似動態產生元件的方法嗎?

就是宣告一個陣列為元件的那種。

===================引 用 tuga 文 章===================
var?? la : TLabel ;


for i := 1 to 10 do
begin
?? la := TLabel(FindComponent('label' IntToStr(i)));
?? la.caption := ' 我是第' inttostr(i) '名' ;

end;
tuga
高階會員


發表:16
回覆:109
積分:120
註冊:2002-07-13

發送簡訊給我
#5 引用回覆 回覆 發表時間:2009-09-21 08:22:53 IP:122.116.xxx.xxx 訂閱
FindComponent 是找到 form 裡面 名稱為 你所指定的元件, 然後傳回來的值是 tcomponent 型態

tlabel(); 是把 變數 轉成 tlabel 型態

有不清楚的地方, 建議 看一下 delphi 的 help 裡面有詳盡的說明

===================引 用 tokiama 文 章===================
這方法是類似動態產生元件的方法嗎?

就是宣告一個陣列為元件的那種。

===================引 用 tuga 文 章===================
var?? la : TLabel ;


for i := 1 to 10 do
begin
?? la := TLabel(FindComponent('label' IntToStr(i)));
?? la.caption := ' 我是第' inttostr(i) '名' ;

end;
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#6 引用回覆 回覆 發表時間:2009-09-21 09:04:31 IP:220.130.xxx.xxx 訂閱
謝謝您的協助
------
環境 DELPHI 7
Delphi 新手,請多指教
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#7 引用回覆 回覆 發表時間:2009-09-21 10:44:46 IP:220.130.xxx.xxx 訂閱
大大再請教
如果我事先沒拉Lable元件,如何用create去建出來,又要如何做定位
再次感謝您

===================引 用 tuga 文 章===================
var
la : TLabel ;
begin
for i := 1 to 10 do
begin
la := TLabel(FindComponent('label' IntToStr(i)));
la.caption := ' 我是第' inttostr(i) '名' ;
end;
------
環境 DELPHI 7
Delphi 新手,請多指教
eaglewolf
資深會員


發表:4
回覆:268
積分:429
註冊:2006-07-06

發送簡訊給我
#8 引用回覆 回覆 發表時間:2009-09-21 11:56:05 IP:211.75.xxx.xxx 未訂閱
var
la:TLabel;
begin
la:=TLabel.Create(self);
la.Caption:='xxx';
la.parent:=self;
la.Top := 0;
la.Height:=20;
la.Left := 0;
la.Width := 100;
end;
------
先查HELP
再查GOOGLE
最後才發問

沒人有義務替你解答問題
在標題或文章中標明很急
並不會增加網友回答速度

Developing Tool:
1.Delphi 6
2.Visual Studio 2005
3.Visual Studio 2008
DBMS:
MS-SQL
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#9 引用回覆 回覆 發表時間:2009-09-22 10:31:37 IP:220.130.xxx.xxx 訂閱
謝謝您了,測試一下,再上來請益
===================引 用 eaglewolf 文 章===================
var
la:TLabel;
begin
la:=TLabel.Create(self);
la.Caption:='xxx';
la.parent:=self;
la.Top := 0;
la.Height:=20;
la.Left := 0;
la.Width := 100;
end;
------
環境 DELPHI 7
Delphi 新手,請多指教
編輯記錄
yish35 重新編輯於 2009-09-22 10:46:02, 註解 無‧
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#10 引用回覆 回覆 發表時間:2009-09-24 17:28:36 IP:220.130.xxx.xxx 訂閱
大大,請教
如果我點第二次,他字會貼在一起
如何做,才能將同一位置,上次產生的字,清除掉
感謝您
===================引 用 eaglewolf 文 章===================
var
la:TLabel;
begin
la:=TLabel.Create(self);
la.Caption:='xxx';
la.parent:=self;
la.Top := 0;
la.Height:=20;
la.Left := 0;
la.Width := 100;
end;
------
環境 DELPHI 7
Delphi 新手,請多指教
老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#11 引用回覆 回覆 發表時間:2009-09-25 08:12:49 IP:59.120.xxx.xxx 未訂閱
可以先爬爬文~
版上已有許多文章可以找到答案了~


[code delphi]
var la:TLabel;
begin
if Form1.FindComponent('test') <> nil then
FindComponent('test').Free
else
begin
la:=TLabel.Create(self);
la.Caption:='xxx';
la.parent:=self;
la.Name :='test';
la.Top := 0;
la.Height:=20;
la.Left := 0;
la.Width := 100;
end

[/code]
tuga
高階會員


發表:16
回覆:109
積分:120
註冊:2002-07-13

發送簡訊給我
#12 引用回覆 回覆 發表時間:2009-09-25 08:34:48 IP:122.116.xxx.xxx 訂閱
  設定 left 跟 top 這兩個 property, 可以調整位置
設定 caption 可以設定元件上面要顯示的字

你可以在 form 上面, 把 focus 移至那個元件, 然後按 F1, 會出現那個元件的 help

雖然是英文的, 不過, 試著去看一看, 提升自己的能力
yish35
一般會員


發表:5
回覆:29
積分:6
註冊:2007-01-10

發送簡訊給我
#13 引用回覆 回覆 發表時間:2009-09-25 13:10:39 IP:220.130.xxx.xxx 訂閱
老大仔前輩,謝謝您了,之前那個OE也是您最後解釋才
懂的老實說,eaglewolf大大的回答,我真的找到許多相
關都混在其他問題中的,真的是有看沒有懂啦。
老大仔前輩的方式,再點第二次不會更新,所以我換了位
置就可以了,但也是老大仔前輩教的啦,最重要的是,我
看懂了,以後應用會更方便。
不過很感謝各位的教導
這是我出給自已的作業,對各位而言簡單到不行,可是
我就是不會,以下是我做的程式,給後面想入門的人參考


[code delphi]

var
i,k,m,g:integer;
la:TLabel;
begin
//使用delphi 2010

for i:=1 to 10 do
begin
FindComponent('test' inttostr(i)).Free;
la:=TLabel.Create(self);
la.parent:=self;
la.Name :='test' inttostr(i);
la.Top := 48 I*15;
la.Height:=20;
la.Left := 64;
la.Width := 100;
la.Font.Size:=12;
la.Caption:='';

repeat
randomize;

k:=random(100) 1;
until (k <> m );
m:=k;
la.Caption:=inttostr(k);
end;
end;
[/code]

To TUGA大
我有看了ONLINE HelP啦,因為是Create出來,所以我一
直想不透

===================引 用 老大仔 文 章===================
可以先爬爬文~
版上已有許多文章可以找到答案了~


[code delphi]
var la:TLabel;
begin
if Form1.FindComponent('test') <> nil then
FindComponent('test').Free
else
begin
la:=TLabel.Create(self);
la.Caption:='xxx';
la.parent:=self;
la.Name :='test';
la.Top := 0;
la.Height:=20;
la.Left := 0;
la.Width := 100;
end

[/code]

------
環境 DELPHI 7
Delphi 新手,請多指教
系統時間:2024-05-16 15:39:15
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!