如何在某一Form上取得目前Focus的物件? |
答題得分者是:Miles
|
channel
尊榮會員 發表:67 回覆:707 積分:854 註冊:2002-05-02 發送簡訊給我 |
|
Miles
尊榮會員 發表:27 回覆:662 積分:622 註冊:2002-07-12 發送簡訊給我 |
Hello channel 兄您好:
拉幾個元件在Form上, 拉一個Label, 在Label1的OnMouseMove試試這一段
procedure TForm1.Label1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin if ActiveControl <> nil then begin ActiveControl.Left := ActiveControl.Left 1; Label1.Caption := ActiveControl.Name; end; end;
------
我不是高手, 高手是正在銀幕前微笑的人. |
danny
版主 發表:100 回覆:522 積分:595 註冊:2002-03-11 發送簡訊給我 |
|
channel
尊榮會員 發表:67 回覆:707 積分:854 註冊:2002-05-02 發送簡訊給我 |
|
danny
版主 發表:100 回覆:522 積分:595 註冊:2002-03-11 發送簡訊給我 |
|
channel
尊榮會員 發表:67 回覆:707 積分:854 註冊:2002-05-02 發送簡訊給我 |
引言: 此次問題忘了說清楚,我是有針對單一族群的Component例TDBEdit,自己找Help的結果可以用Focused這一個屬性,如下所示,感謝Miles及danny的回答。 < class="code"> for I := 0 to ComponentCount - 1 do if Components[I] is TDBEDit then if TDBEdit(Components[I]).Focused then TDBEdit(Components[I]).Color := clRed;還可以改成這樣比較簡潔: if ActiveControl is TDBEdit then TDBEdit(ActiveControl).Color := clRed;
------
~小弟淺見,參考看看~ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |