翻譯|使用教程|編輯:吉煒煒|2025-04-23 10:03:13.940|閱讀 110 次
概述:FastReport 不僅僅包含報表組件,它還提供更多功能!特別是,它有幾個組件可以像其他 Delphi 組件一樣在您的應(yīng)用程序中使用,而且我們一直在向庫中添加更多組件。在本文中,我們將介紹其中之一:TfrShellTreeView。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
不僅僅包含報表組件,它還提供更多功能!特別是,它有幾個組件可以像其他 Delphi 組件一樣在您的應(yīng)用程序中使用,而且我們一直在向庫中添加更多組件。在本文中,我們將介紹其中之一:TfrShellTreeView。
此組件旨在顯示文件系統(tǒng)的元素,部分功能類似于 Delphi 中的 TDirectoryListBox、TDirectoryOutline 以及 Lazarus 中的 TShellTreeView 等組件。如果您想在不啟動 IDE 的情況下查看其外觀,您可以在資源管理器窗口左側(cè)看到“樹”。
該組件在 Windows 和 Linux 上均可良好運行,適用于 Delphi 和 Lazarus。不支持 FMX 開發(fā)。
TfrShellTreeView 利用了許多操作系統(tǒng)功能。例如,在 Windows 中,您可以像處理普通文件夾一樣處理 zip 壓縮包,甚至可以處理其中的內(nèi)容——提取和添加文件。某些功能可能在 Linux 中不可用,具體取決于您運行的版本。不過不用擔(dān)心:顯示樹狀圖和選擇元素在任何操作系統(tǒng)上都能正常工作。
TfrShellTreeView 管理與操作系統(tǒng)交互的主要屬性是 OptionsShell。
TfrShellTreeView 支持一組特定于標(biāo)準(zhǔn)文件對話框或 Windows 資源管理器的熱鍵(Ctrl+С、Ctrl+V、Delete 等)以及標(biāo)準(zhǔn)對話框。
此外,TfrShellTreeView 組件支持在其自身以及其他(并非所有)文件管理器中拖放文件系統(tǒng)元素。OptionsBehavior.AllowDragDrop 屬性用于允許拖放操作。拖放操作通過操作系統(tǒng)函數(shù)執(zhí)行。
其余屬性與 TTreeView 和 TfrTreeView 組件中的屬性類似。但值得注意的是,它們按使用類型分組:OptionsBehavior、OptionsSelection、OptionsShell、OptionsView。這將幫助您快速找到所需的屬性。
如上所述,該組件旨在顯示計算機的文件系統(tǒng)。默認(rèn)情況下,該組件配置為顯示系統(tǒng)的根文件夾:Windows 中的“桌面”或 Linux 中的“/”。但是,該組件的功能并不僅限于此。
我們將 TfrShellTreeView 組件放置在窗體上并打開其編輯器:
TfrShellTreeView 編輯器看起來與 TTreeView 和 TfrTreeView 組件的編輯器類似,但它有 2 個新按鈕:
正如我們在編輯器截圖中看到的,該組件可以包含:
常規(guī)節(jié)點和子節(jié)點的創(chuàng)建和編輯方式與常規(guī) TreeView 相同。
使用“新建 shell 根項”按鈕可以創(chuàng)建指向文件結(jié)構(gòu)元素的節(jié)點。這將創(chuàng)建一個與當(dāng)前節(jié)點同級的 shell 節(jié)點。如果點擊“新建 shell 根子項”,則會創(chuàng)建一個與當(dāng)前節(jié)點相關(guān)的子 shell 節(jié)點。請注意,您無法為 shell 節(jié)點創(chuàng)建子節(jié)點,但可以為常規(guī)節(jié)點創(chuàng)建子節(jié)點。
編輯 Shell 節(jié)點歸根結(jié)底就是指定給定節(jié)點鏈接到哪個文件夾。您可以使用 TfrRootNodes 類型的常量設(shè)置與文件夾的綁定。這些常量定義了諸如桌面、自動啟動等位置。如果您設(shè)置了 rfCustomPath 常量,則可以在下方目錄樹中添加指向文件系統(tǒng)文件夾的路徑。您也可以使用位于目錄樹下方的編輯窗口來設(shè)置此路徑。例如,下面的屏幕截圖設(shè)置了位于驅(qū)動器 C:\ 上的 Lazarus 文件夾的路徑。
與常規(guī) TreeView 類似,組件的常規(guī)節(jié)點可以分配圖標(biāo)。Shell 節(jié)點無法分配圖標(biāo);它們使用操作系統(tǒng)中設(shè)置的圖標(biāo)。對于節(jié)點,實際使用的是 ImageIndex 屬性中添加的圖標(biāo)索引。其余圖標(biāo)索引則不會被使用。此外,由于組件使用的特殊性,一些其他屬性尚未實現(xiàn)。例如,無法選擇多個元素。
最常用的屬性當(dāng)然是 TfrShellTreeView.SelectedPath。如果選中了一個 Shell 節(jié)點,則此屬性包含該節(jié)點指向的文件夾的路徑。否則,此屬性等于空字符串。
此外,該組件還可以通過編程方式使用。您可以像添加常規(guī) TTreeView 一樣添加常規(guī)(非 shell)節(jié)點。
frShellTreeView1.Items.Add(nil,Edit1.Text); //add a root node with text from Edit1
向當(dāng)前選定的節(jié)點添加一個節(jié)點:
procedure TForm1.Button5Click(Sender: TObject);
var N:TfrShellTreeViewNode;
begin
N:=(frShellTreeView1.Selected) as TfrShellTreeViewNode;
if N=nil then Exit;
frShellTreeView1.Items.AddChild(N,Edit1.Text);
end;
刪除節(jié)點也很簡單。例如,以下是刪除當(dāng)前選定節(jié)點的方法:
procedure TForm1.Button2Click(Sender: TObject);
var N:TfrShellTreeViewNode;
begin
N:=(frShellTreeView1.Selected) as TfrShellTreeViewNode;
if N=nil then exit;
frShellTreeView1.Items.Delete(N);
end;
但是,要刪除一個節(jié)點,您只需調(diào)用其 Free 方法即可。
遺憾的是,該組件目前不支持生成與其關(guān)聯(lián)的文件系統(tǒng)文件夾更改時發(fā)生的事件。該組件的其余功能與標(biāo)準(zhǔn) TreeView 基本一致。
總而言之,F(xiàn)astReport 不僅是創(chuàng)建報表的工具,也是 Delphi 應(yīng)用程序中可用的附加組件的來源。TfrShellTreeView 提供了一種便捷的方式來顯示文件系統(tǒng)元素,并且適用于各種項目。FastReport 組件庫不斷更新,這使得該工具對開發(fā)人員更具吸引力。
_________________________________________________________
關(guān)于慧都科技:
慧都科技是一家行業(yè)數(shù)字化解決方案公司,長期專注于軟件、油氣與制造行業(yè)。公司基于深入的業(yè)務(wù)理解與管理洞察,以系統(tǒng)化的業(yè)務(wù)建模驅(qū)動技術(shù)落地,幫助企業(yè)實現(xiàn)智能化運營與長期競爭優(yōu)勢。在軟件工程領(lǐng)域,我們提供開發(fā)控件、研發(fā)管理、代碼開發(fā)、部署運維等軟件開發(fā)全鏈路所需的產(chǎn)品,提供正版授權(quán)采購、技術(shù)選型、個性化維保等服務(wù),幫助客戶實現(xiàn)技術(shù)合規(guī)、降本增效與風(fēng)險可控。慧都科技是FastReports的在中國區(qū)的合作伙伴,F(xiàn)astReports作為圖表報表領(lǐng)域的優(yōu)秀產(chǎn)品,幫助企業(yè)實現(xiàn)輕松構(gòu)建高性能的表格及圖表。
下載或體驗FastReport產(chǎn)品,請咨詢,或撥打產(chǎn)品熱線:023-68661681
歡迎加入FastReport技術(shù)QQ群:170305738,與更多小伙伴探討報表開發(fā)技能。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自:慧都網(wǎng)