線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1072
推到 Plurk!
推到 Facebook!

如何使用FOR迴圈讓元件也跟著跳動

答題得分者是:ha0009
gwokae
一般會員


發表:1
回覆:2
積分:0
註冊:2004-03-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-04-17 14:38:45 IP:218.175.xxx.xxx 未訂閱
例如說: for i:=1 to 9 do (要跳動的元件如Label1~9).caption:='i'; 請問要怎麼寫才會讓Label也跟著跳動呢? 新手~~煩請大大不吝賜教。 每個人都有一點點的自卑與一點點的驕傲。
------
每個人都有一點點的自卑與一點點的驕傲。
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-04-17 14:53:46 IP:218.163.xxx.xxx 未訂閱
TEXTANIM.ZIP  http://www.delphiarea.com/products/textanim/textanim.zip TTextAnimator 是以 Sun Microsystems 公司知名的 Java Applet 範例程式 NervousText 為基礎,能夠讓文字以四種不同型式動態跳動的視覺化元件 ( 1.3 版,附原始程式碼 ),作者 : Kambiz R. Khojasteh。    網海無涯,學無止境! 發表人 - qoo1234 於 2004/04/17 14:55:07
gwokae
一般會員


發表:1
回覆:2
積分:0
註冊:2004-03-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-04-17 15:08:39 IP:218.175.xxx.xxx 未訂閱
是不是唯一的辦法 就是手寫阿(幾個元件就寫幾次) 每個人都有一點點的自卑與一點點的驕傲。
------
每個人都有一點點的自卑與一點點的驕傲。
qoo1234
版主


發表:256
回覆:1167
積分:659
註冊:2003-02-24

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-04-17 15:30:16 IP:218.163.xxx.xxx 未訂閱
 
unit Unit1;    interface    uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;    type
  TForm1 = class(TForm)
    Label1: TLabel;
    Button1: TButton;
    Timer1: TTimer;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  Form1: TForm1;
  L,T:integer;
implementation    {$R *.dfm}    procedure TForm1.Button1Click(Sender: TObject);
begin
  L:=Label1.left;
  T :=Label1.top;
  Timer1.Enabled := Not Timer1.Enabled;
end;    //控制Label向右移動
procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if Label1.Left>=100 then
  begin
   Label1.Top :=L;
   Label1.Left:=T;
  end
   else
   begin
     Label1.Top :=L;
     Label1.Left:=Label1.Left 5;
   end;
end;    end.    
網海無涯,學無止境! 發表人 - qoo1234 於 2004/04/17 15:36:50
gwokae
一般會員


發表:1
回覆:2
積分:0
註冊:2004-03-03

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-04-17 16:57:33 IP:218.175.xxx.xxx 未訂閱
我想是我寫動態把大大搞亂了 我的問題是我想:連續改變一個物件的參數 例如我有10個Label我想用FOR(或其他方法)改變這10個Label的caption參數 煩請大大不吝回答 每個人都有一點點的自卑與一點點的驕傲。
------
每個人都有一點點的自卑與一點點的驕傲。
ha0009
版主


發表:16
回覆:507
積分:639
註冊:2002-03-16

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-04-17 17:33:41 IP:61.30.xxx.xxx 未訂閱
你好: 給你一個程序研究研究,雖然實用性不高,但也是一種物件使用的技巧 < class="code"> uses TypInfo; // 改變多個相同類型的物件相同屬性的值 procedure ChangeSameComponentProp (ParentComponent : TComponent; ComponentClass : TComponentClass; Const PropName : String; const Value: array of Variant); var idx, Cnt : integer; begin if GetPropInfo(ComponentClass, PropName) = nil then raise Exception.CreateFmt('指定的 %s 類別並沒有指定的 %s 屬性', [ComponentClass.ClassName, PropName]); Cnt := Low (Value); for idx := 0 to ParentComponent.ComponentCount - 1 do begin if ParentComponent.Components [idx] is ComponentClass then SetPropValue (ParentComponent.Components [idx], PropName, Value [Cnt]); Inc (Cnt); if Cnt > High (Value) then break; end; end; procedure TForm1.Button1Click(Sender: TObject); begin // 呼叫範例 ChangeSameComponentProp (Self, TLabel, 'Caption', ['11111', '22222', '33333', '444444', '55555']); end;
catseye
一般會員


發表:0
回覆:1
積分:0
註冊:2002-04-14

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-04-17 23:05:19 IP:218.162.xxx.xxx 未訂閱
如果是這樣子的方式呢 ? for i := 1 to 9 do TLabel(Form1.FindComponent('Label' IntToStr(i))).Caption := 'Name' IntToStr(i);
系統時間:2024-05-11 5:05:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!