CDockState 類別
序列化的 CObject
類別,這個類別會在持續性記憶體 (檔案) 中載入、卸載或清除一個或多個停駐控制列的狀態。
語法
class CDockState : public CObject
成員
公用方法
名稱 | 描述 |
---|---|
CDockState::Clear | 清除停駐狀態資訊。 |
CDockState::GetVersion | 擷取預存列狀態的版本號碼。 |
CDockState::LoadState | 從登錄或 擷取狀態資訊。INI 檔案。 |
CDockState::SaveState | 將狀態資訊儲存至登錄或 INI 檔案。 |
公用資料成員
名稱 | 描述 |
---|---|
CDockState::m_arrBarInfo | 預存停駐狀態資訊的指標數位,每個控制列都有一個專案。 |
備註
停駐狀態包含列的大小和位置,以及其是否停駐。 擷取儲存的停駐狀態時, CDockState
會檢查列的位置,如果目前畫面設定看不到列, CDockState
則會調整列的位置,使其可見。 的主要目的是 CDockState
保留數個控制列的整個狀態,並允許該狀態儲存並載入登錄,也就是應用程式的 。INI 檔案或二進位格式做為對象內容的一 CArchive
部分。
列可以是任何可停駐的控制列,包括工具列、狀態列或對話框列。 CDockState
對像是透過 CArchive
物件寫入和讀取檔案。
CFrameWnd::GetDockState 會擷取所有框架視窗 CControlBar
物件的狀態資訊,並將其放入 物件中 CDockState
。 然後,您可以使用 Serialize 或 CDockState::SaveState 將對象的內容CDockState
寫入記憶體。 如果您稍後想要在框架視窗中還原控制列的狀態,您可以使用 或 CDockState::LoadState 載入狀態Serialize
,然後使用 CFrameWnd::SetDockState 將儲存的狀態套用至框架視窗的控制列。
如需停駐控制列的詳細資訊,請參閱控制列、工具列:停駐和浮動,以及框架視窗一文。
繼承階層架構
CDockState
需求
標頭: afxadv.h
CDockState::Clear
呼叫此函式,以清除儲存在物件中的所有 CDockState
停駐資訊。
void Clear();
備註
這不僅包括列是否停駐,也包括列的大小和位置,以及是否可見。
CDockState::GetVersion
呼叫此函式以擷取預存列狀態的版本號碼。
DWORD GetVersion();
傳回值
如果預存列資訊比目前長條狀態還舊,則為 1;如果預存列資訊與目前直方圖狀態相同,則為 2。
備註
版本支援可讓修訂的列加入新的永續性屬性,但仍能夠偵測及載入舊版列所建立的持續性狀態。
CDockState::LoadState
呼叫此函式,從登錄或 擷取狀態資訊。INI 檔案。
void LoadState(LPCTSTR lpszProfileName);
參數
lpszProfileName
指向 Null 終止的字串,指定初始化檔案中的區段名稱,或儲存狀態資訊之 Windows 登錄中的機碼。
備註
配置檔名稱是應用程式的 區段。INI 檔案或包含橫條狀態信息的登錄。 您可以將控制列狀態資訊儲存至登入或 。INI 檔案與 SaveState
。
CDockState::m_arrBarInfo
CPtrArray
物件,此對像是物件中儲存狀態資訊之每個控制列之預存控件列資訊的CDockState
指標數位。
CPtrArray m_arrBarInfo;
CDockState::SaveState
呼叫此函式,將狀態資訊儲存至登錄或 。INI 檔案。
void SaveState(LPCTSTR lpszProfileName);
參數
lpszProfileName
指向 Null 字串,指定初始化檔案中的區段名稱,或儲存狀態資訊之 Windows 登錄中的機碼。
備註
配置檔名稱是應用程式的 區段。INI 檔案或包含控制列狀態信息的登錄。 SaveState
也會儲存目前的螢幕大小。 您可以從登錄或 擷取控制列資訊。INI 檔案與 LoadState
。