我一直在製作使用delphi組件爲我的網站LearnDelphi.tv的視頻。我正在尋找覆蓋THeaderControl,但找不到它的任何用處 - 這個組件現在不需要 - 超過其他組件,如TListView(與報告視圖樣式),還是有一些使用它,我忽略了?在Delphi中有沒有THeaderControl的用法
編輯: 我在THeaderControl上爲我的一個商業視頻錄製了一個片段,但我決定免費發佈這個小節(20分鐘,6小時)。在YouTube上觀看。感謝所有貢獻的人。
我一直在製作使用delphi組件爲我的網站LearnDelphi.tv的視頻。我正在尋找覆蓋THeaderControl,但找不到它的任何用處 - 這個組件現在不需要 - 超過其他組件,如TListView(與報告視圖樣式),還是有一些使用它,我忽略了?在Delphi中有沒有THeaderControl的用法
編輯: 我在THeaderControl上爲我的一個商業視頻錄製了一個片段,但我決定免費發佈這個小節(20分鐘,6小時)。在YouTube上觀看。感謝所有貢獻的人。
一般來說:THeaderControl
可以用作表格數據的標題。當然,通常使用列表視圖。但是對於每列中不同組件的外來佈局,使用列表視圖或類似方法不容易創建,或者對於每個列甚至完全不同的佈局,標題控件可能是有用的。它只是在需要的地方提供更多的靈活性。將其與TPageControl
進行比較,提供比TTabControl
更多的靈活性。
關於特定的利基情況:例如,我使用標題控件作爲計劃網格組件的一部分。標題控件通過數據源獲取標題,標題部分與列和滾動條同步。事實上,這需要一些代碼,但實現不同事件時比不超過設計時:
TPlanGridHeader = class(TCustomHeaderControl)
private
FSectionWidth: Integer;
procedure SetSectionWidth(Value: Integer);
procedure WMMouseMove(var Message: TWMMouseMove); message WM_MOUSEMOVE;
protected
function CreateSection: THeaderSection; override;
procedure SectionResize(Section: THeaderSection); override;
procedure SectionTrack(Section: THeaderSection; Width: Integer;
State: TSectionTrackState); override;
property SectionWidth: Integer read FSectionWidth write SetSectionWidth;
public
procedure AddSection(const AText, AHint: String);
constructor Create(AOwner: TComponent); override;
end;
它曾經是很好的與標籤正常列表上的標題,但它確實是比較少用現在。不知道這是一個問這個問題的好地方。 (我沒有downvote!) – mj2008 2012-07-16 11:31:19
@TLama我已經看了幫助,並做了相當合理的谷歌搜索。一個例子不斷彈出一個TListBox上的頭文件,這實現起來非常麻煩 - 而且使用TListView更容易 - 我想知道是否有人用它來做一些有用的事情。 – Alister 2012-07-16 11:40:20
我不明白這個問題。您似乎在尋找使用標題控件的原因。列表視圖控件有特定的問題嗎? – 2012-07-16 11:45:35