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

如何在表單打開時自動展開ShellTreeView?

尚未結案
JimmyLiang
一般會員


發表:4
回覆:2
積分:1
註冊:2002-11-18

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-11-18 18:44:59 IP:61.218.xxx.xxx 未訂閱
請問各位高手,我有一個執行檔放在C:\Jimmy\Tmp下,如何在表單打開時將ShellTreeView自動展開到此目錄?
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-11-21 00:27:10 IP:61.66.xxx.xxx 未訂閱
引言: 請問各位高手,我有一個執行檔放在C:\Jimmy\Tmp下,如何在表單打開時將ShellTreeView自動展開到此目錄?
如果我印象中沒有錯的話, 在oncreate中是不能直接做有關在該主窗中任何畫面異動的行為, 如setfocus, view....., 否則會有Access 的錯誤 但我利用下面的方式可以解決, 提供你參考 1.在 private { Private declarations } procedure FormChange(Sender: Tobject; var Done: boolean); --> 加此行, formchange名稱可自定 2.在 {$R *.DFM} 下加入此程式段 procedure TForm1.FormChange(Sender: Tobject; var Done: boolean); var handle: longInt; begin handle:= FindWindow('TForm1',nil); if handle = 0 then exit; Application.ProcessMessages; Application.OnIdle:= nil; Done:= True; // 寫下你那一段treeview展開程式 end; 3. 在 procedure TForm1.FormCreate(Sender: TObject); begin : : // 下行請加到最後一列 Application.OnIdle:= FormChange; end; 這樣在oncreate結束, window的handle變成Idle(閒置)時, 會自動去呼叫 FormChange 的程式段, 就應該可以解決你的問題了!
JimmyLiang
一般會員


發表:4
回覆:2
積分:1
註冊:2002-11-18

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-11-25 12:52:21 IP:61.218.xxx.xxx 未訂閱
感謝P.D.兄的解答!Sorry!最近在趕貿易專案,所以至今才上網回覆! 嗯!我想做的功能只是希望在表單打開時自動將ShellTreeView展開,以往用DirectoryListBox只要將其Directory屬性指定路徑即可自動展開,現在我將ShellTreeView的Path屬性指定路徑,可是卻不會自動展開,不知道要怎麼寫才能達到這個效果?
cmf
尊榮會員


發表:84
回覆:918
積分:1032
註冊:2002-06-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-12-25 10:28:33 IP:61.218.xxx.xxx 未訂閱
引言: 請問各位高手,我有一個執行檔放在C:\Jimmy\Tmp下,如何在表單打開時將ShellTreeView自動展開到此目錄?
ShellTreeView.ROOT:='C:\Jimmy\Tmp';
------
︿︿
系統時間:2024-05-08 3:30:15
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!