C++ Builder 參考手冊 ? TComponentState
System::Classes::TComponentState 是組件類 System::Classes::TComponent 的 ComponentState 屬性的類型圈驼,組件的狀態(tài)奖慌。
- 頭文件:
#include <System.Classes.hpp>
- 命名空間:
System::Classes
- 類型定義:
enum System_Classes__55 : unsigned char
{
csLoading,
csReading,
csWriting,
csDestroying,
csDesigning,
csAncestor,
csUpdating,
csFixups,
csFreeNotification,
csInline,
csDesignInstance
};
typedef System::Set<System_Classes__55,
System_Classes__55::csLoading,
System_Classes__55::csDesignInstance> TComponentState;
組件狀態(tài) | 說明 |
---|---|
csLoading | 一個文件管理對象正在加載這個組件檀葛。 當這個組件第一次創(chuàng)建的時候逗嫡,設置了這個狀態(tài)值描沟, 一直到這個組件和這個組件容納的所有子組件都加載完成, Loaded 方法被調用的時候,這個值才被清掉 |
csReading | 這個組件正在從流里面讀取屬性值。 當 csReading 被設置的時候芽丹, csLoading 也會被設置。 csReading 是 csLoading 的一個子區(qū)間卜朗, 當讀取屬性的時候被設置 |
csWriting | 這個組件正在把屬性值寫入流中 |
csDestroying | 這個組件正在被銷毀 |
csDesigning | 這個組件正在處于設計期間拔第, 即用畫面編輯器設計畫面的設計期間 |
csAncestor | 這個組件是被繼承的, 只有包含 csDesigning 的時候才可能包含 csAncestor |
csUpdating | 這個組件正在被更新场钉, 正改變反映在被繼承的窗口表單里面蚊俺。 只有當包含 csAncestor 狀態(tài)的時候,這個狀態(tài)在才會被設置 |
csFixups | 這個組件關聯(lián)到其他未加載的窗口表單里面的組件逛万, 一直到所有相關的組件都加載完成了泳猬,這個標志才會被清除 |
csFreeNotification | 一個或多個其他組件在銷毀的時候,通知這個組件它們被銷毀了。 當其他組件調用了這個組件的 FreeNotification 方法時得封, 這個值就被添加進來了 |
csInline | 這是最頂層的組件埋心, 可以在設計期間編輯和修改,并且嵌入到了一個窗口表單里面呛每。 這個值是用來判斷嵌套框架 (frames) 當加載和保存的時候 |
csDesignInstance | 這個組件在設計器里面是根對象踩窖。 只有包含 csDesigning 狀態(tài)的時候坡氯, 才可以包含 csDesignInstance 狀態(tài)晨横。 例如,對于一個 Frame箫柳, 當正在用畫面編輯器編輯這個 Frame 的時候手形,這個狀態(tài)值被設置, 但是當這個 Frame 當作一個組件放在了其他 Form 或 Frame 里面的時候悯恍, 就不會被設置 |
參考:
- System::Classes::TComponent::ComponentState
- System::Classes::TComponent::ComponentStyle
- System::Classes::TComponentStyle
- System::Classes::TComponent
- System::Classes::TPersistent
- System::TObject
- PME 架構
- VCL 類繼承關系
C++ Builder 參考手冊 ? TComponentState