ListBox 不使用Disabled,但如何使用API使其無法FOCUS |
答題得分者是:Stallion
|
ttk
一般會員 發表:3 回覆:9 積分:2 註冊:2004-11-12 發送簡訊給我 |
|
anyone
中階會員 發表:1 回覆:63 積分:52 註冊:2007-02-12 發送簡訊給我 |
不知道這是不是你要的
<textarea class="delphi" rows="10" cols="60" name="code">procedure TForm1.ListBox1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
i:=ListBox1.ItemIndex;
end;
procedure TForm1.ListBox1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ListBox1.ItemIndex:=i;
end;
</textarea>
|
ttk
一般會員 發表:3 回覆:9 積分:2 註冊:2004-11-12 發送簡訊給我 |
|
anyone
中階會員 發表:1 回覆:63 積分:52 註冊:2007-02-12 發送簡訊給我 |
|
Stallion
版主 發表:52 回覆:1600 積分:1995 註冊:2004-09-15 發送簡訊給我 |
1.想太多了~經過程式控制而不由使用者來點選,那麼直接把 enabled 屬性設定成false即可。
2.如果真的不想要有看起來灰色的樣子,小弟查了一下HELP可以用VCL內部使用(internal use)的方法,所謂內部使用可能未來的繼承移植性就不能保證了。 void __fastcall TForm1::ListBox1Enter(TObject *Sender) { this->DefocusControl(this->ListBox1,false); //這樣 ListBox 就不能接收滑鼠與鍵盤在其上有焦點。 } ===================引 用 ttk 文 章=================== 謝謝你的回覆,我希望的功能是: ListBox item 的選擇僅透過程式來控制,但不希望由滑鼠來點選
編輯記錄
Stallion 重新編輯於 2007-09-05 17:40:57, 註解 加入一些字~‧
|
ttk
一般會員 發表:3 回覆:9 積分:2 註冊:2004-11-12 發送簡訊給我 |
我把指令改成 this->DefocusControl(this->ListBox1,true); 功能就出來了
Thank you very much! PS:我試過上面另一個方式,其效果不適合我的使用,thank you! ===================引 用 Stallion 文 章=================== 1.想太多了~經過程式控制而不由使用者來點選,那麼直接把 enabled 屬性設定成false即可。 2.如果真的不想要有看起來灰色的樣子,小弟查了一下HELP可以用VCL內部使用(internal use)的方法,所謂內部使用可能未來的繼承移植性就不能保證了。 ?void __fastcall TForm1::ListBox1Enter(TObject *Sender) { ?this->DefocusControl(this->ListBox1,false); //這樣 ListBox 就不能接收滑鼠與鍵盤在其上有焦點。 } |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |