TreeView 禁止點選時 , 又能使用捲軸? |
答題得分者是:harpist
|
suntea
一般會員 發表:18 回覆:16 積分:6 註冊:2006-12-12 發送簡訊給我 |
|
harpist
資深會員 發表:3 回覆:251 積分:430 註冊:2002-10-03 發送簡訊給我 |
你的需求不適合使用 Enabled 這個屬性來作,他會忽略所有mouse、keyboard、timer 事件,
你應該另外設計 TreeView 禁止點選的功能,如自己去攔截訊息。 <textarea class="cpp" rows="10" cols="60" name="code">class TForm1 : public TForm { __published: // IDE-managed Components TTreeView *TreeView1; private: // User declarations TWndMethod oldTreeViewProc; //儲存原訊息函式 void __fastcall TreeViewWndProc(Messages::TMessage &Message);//攔截訊息函式 public: // User declarations __fastcall TForm1(TComponent* Owner); }; </textarea> <textarea class="cpp" rows="10" cols="60" name="code">//--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { oldTreeViewProc = TreeView1->WindowProc; TreeView1->WindowProc = TreeViewWndProc; } //--------------------------------------------------------------------------- void __fastcall TForm1::TreeViewWndProc(Messages::TMessage &Message) { if(Message.Msg == WM_LBUTTONDOWN) { //忽略 } else { oldCheckTreeProc(Message); } } //--------------------------------------------------------------------------- </textarea>
------
~§~迷時師渡,悟了自渡~§~
編輯記錄
harpist 重新編輯於 2007-06-21 19:27:50, 註解 無‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |