Kelas CPane
Kelas CPane
ini adalah peningkatan kelas CControlBar. Jika Anda meningkatkan proyek MFC yang ada, ganti semua kemunculan CControlBar
dengan CPane
.
Sintaks
class CPane : public CBasePane
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
CPane::~CPane |
Destruktor. |
Metode Publik
Nama | Deskripsi |
---|---|
CPane::AdjustSizeImmediate | Segera menghitung ulang tata letak panel. |
CPane::AllocElements | Mengalokasikan penyimpanan untuk penggunaan internal. |
CPane::AllowShowOnPaneMenu | Menentukan apakah panel tercantum dalam daftar panel yang dihasilkan runtime untuk aplikasi. |
CPane::CalcAvailableSize | Menghitung perbedaan ukuran antara persegi panjang tertentu dan persegi panjang jendela saat ini. |
CPane::CalcInsideRect | Menghitung persegi dalam panel, dengan mempertimbangkan batas dan pegangan. |
CPane::CalcRecentDockedRect | Menghitung persegi panjang yang baru saja ditambakan. |
CPane::CalcSize | Menghitung ukuran panel. |
CPane::CanBeDocked | Menentukan apakah panel dapat ditampung di panel dasar yang ditentukan. |
CPane::CanBeTabbedDocument | Menentukan apakah panel dapat dikonversi ke dokumen bertab. |
CPane::ConvertToTabbedDocument | Mengonversi panel yang dapat ditautkan ke dokumen bertab. |
CPane::CopyState | Menyalin status panel. (Penimpaan CBasePane::CopyState.) |
CPane::Create | Membuat bilah kontrol dan melampirkannya ke CPane objek. |
CPane::CreateDefaultMiniframe | Membuat jendela bingkai mini untuk panel mengambang. |
CPane::CreateEx | Membuat bilah kontrol dan melampirkannya ke CPane objek. |
CPane::CreateObject |
Digunakan oleh kerangka kerja untuk membuat instans dinamis dari jenis kelas ini. |
CPane::D ockByMouse | Menambungkan panel dengan menggunakan metode docking mouse. |
CPane::D ockPane | Menambungkan panel mengambang ke panel dasar. |
CPane::D ockPaneStandard | Menambah panel dengan menggunakan dok kerangka (standar). |
CPane::D ockToFrameWindow | Menambak panel yang dapat ditambat ke bingkai. (Mengambil alih CBasePane::DockToFrameWindow .) |
CPane::D oesAllowSiblingBars | Menunjukkan apakah Anda dapat menambungkan panel lain di baris yang sama tempat panel saat ini ditampung. |
CPane::FloatPane | Mengambangkan panel. |
CPane::GetAvailableExpandSize | Mengembalikan jumlah, dalam piksel, yang dapat diperluas panel. |
CPane::GetAvailableStretchSize | Mengembalikan jumlah, dalam piksel, yang dapat menyusutkan panel. |
CPane::GetBorders | Mengembalikan lebar batas panel. |
CPane::GetClientHotSpot | Mengembalikan hot spot untuk panel. |
CPane::GetDockSiteRow | Mengembalikan baris dock tempat panel ditambarkan. |
CPane::GetExclusiveRowMode | Menentukan apakah panel berada dalam mode baris eksklusif. |
CPane::GetHotSpot | Mengembalikan hot spot yang disimpan dalam objek yang mendasar CMFCDragFrameImpl . |
CPane::GetMinSize | Mengambil ukuran minimum yang diizinkan untuk panel. |
CPane::GetPaneName | Mengambil judul untuk panel. |
CPane::GetResizeStep |
Digunakan secara internal. |
CPane::GetThisClass |
Digunakan oleh kerangka kerja untuk mendapatkan penunjuk ke objek CRuntimeClass yang terkait dengan jenis kelas ini. |
CPane::GetVirtualRect | Mengambil persegi virtual panel. |
CPane::IsChangeState | Saat panel sedang dipindahkan, metode ini menganalisis posisi panel relatif terhadap panel lain, baris dok, dan jendela bingkai mini, dan mengembalikan nilai AFX_CS_STATUS yang sesuai. |
CPane::IsDragMode | Menentukan apakah panel sedang diseret. |
CPane::IsInFloatingMultiPaneFrameWnd | Menentukan apakah panel berada di jendela bingkai multi-panel. (Mengambil alih CBasePane::IsInFloatingMultiPaneFrameWnd .) |
CPane::IsLeftOf | Menentukan apakah panel dibiarkan (atau di atas) persegi panjang yang ditentukan. |
CPane::IsResizable | Menentukan apakah panel dapat diubah ukurannya. (Penimpaan CBasePane::IsResizable.) |
CPane::IsTabbed | Menentukan apakah panel telah disisipkan dalam kontrol tab jendela bertab. (Penimpaan CBasePane::IsTabbed.) |
CPane::LoadState | Memuat status panel dari registri. (Penimpaan CBasePane::LoadState.) |
CPane::MoveByAlignment | Memindahkan panel dan persegi virtual dengan jumlah yang ditentukan. |
CPane::MovePane | Memindahkan panel ke persegi panjang yang ditentukan. |
CPane::OnAfterChangeParent | Dipanggil oleh kerangka kerja saat induk panel telah berubah. |
CPane::OnBeforeChangeParent | Dipanggil oleh kerangka kerja saat induk panel akan berubah. |
CPane::OnPressCloseButton | Dipanggil oleh kerangka kerja saat pengguna memilih tombol Tutup pada keterangan untuk panel. |
CPane::OnProcessDblClk |
Digunakan secara internal. |
CPane::OnShowControlBarMenu | Dipanggil oleh kerangka kerja saat menu panel khusus akan ditampilkan. |
CPane::OnShowControlBarMenu | Dipanggil oleh kerangka kerja saat menu panel khusus akan ditampilkan. |
CPane::PrepareToDock |
Digunakan secara internal. |
CPane::RecalcLayout | Menghitung ulang informasi tata letak untuk panel. (Penimpaan CBasePane::RecalcLayout.) |
CPane::SaveState | Menyimpan status panel ke registri. (Penimpaan CBasePane::SaveState.) |
CPane::SetActiveInGroup | Menandai panel sebagai aktif. |
CPane::SetBorders | Mengatur nilai batas panel. |
CPane::SetClientHotSpot | Mengatur hot spot untuk panel. |
CPane::SetDockState | Memulihkan informasi status docking untuk panel. |
CPane::SetExclusiveRowMode | Mengaktifkan atau menonaktifkan mode baris eksklusif. |
CPane::SetMiniFrameRTC | Mengatur informasi kelas runtime untuk jendela bingkai mini default. |
CPane::SetMinSize | Mengatur ukuran minimum yang diizinkan untuk panel. |
CPane::SetVirtualRect | Mengatur persegi virtual panel. |
CPane::StretchPaneDeferWndPos | Membentangkan panel secara vertikal atau horizontal berdasarkan gaya dok. |
CPane::ToggleAutoHide | Mengalihkan mode sembunyikan otomatis. |
CPane::UndockPane | Menghapus panel dari situs dock, slider default, atau jendela bingkai mini tempat panel tersebut saat ini ditambatkan. (Penimpaan CBasePane::UndockPane.) |
CPane::UpdateVirtualRect | Memperbarui persegi virtual. |
Metode yang Dilindungi
Nama | Deskripsi |
---|---|
CPane::OnAfterDock | Dipanggil oleh kerangka kerja saat panel telah ditambatkan. |
CPane::OnAfterFloat | Dipanggil oleh kerangka kerja ketika panel telah diambang. |
CPane::OnBeforeDock | Dipanggil oleh kerangka kerja saat panel akan ditambatkan. |
CPane::OnBeforeFloat | Dipanggil oleh kerangka kerja saat panel akan mengambang. |
Anggota Data
Nama | Deskripsi |
---|---|
CPane::m_bHandleMinSize | Memungkinkan penanganan yang konsisten dari ukuran minimal untuk panel. |
CPane::m_recentDockInfo | Berisi informasi docking baru-baru ini. |
Keterangan
Biasanya, CPane
objek tidak dibuat secara langsung. Jika Anda memerlukan panel yang memiliki fungsionalitas docking, dapatkan objek Anda dari CDockablePane. Jika Anda memerlukan fungsionalitas toolbar, dapatkan objek Anda dari CMFCToolBar.
Ketika Anda mendapatkan kelas dari CPane
, itu dapat ditampar di CDockSite dan dapat diambang di CPaneFrameWnd.
Hierarki Warisan
Persyaratan
Header: afxPane.h
CPane::AdjustSizeImmediate
Segera menghitung ulang tata letak panel.
virtual void AdjustSizeImmediate(BOOL bRecalcLayout = TRUE);
Parameter
bRecalcLayout
[di] TRUE untuk menghitung ulang tata letak panel secara otomatis; jika tidak, FALSE.
Keterangan
Panggil metode ini saat Anda mengubah tata letak panel secara dinamis. Misalnya, Anda mungkin ingin memanggil metode ini saat menyembunyikan atau menampilkan tombol toolbar.
CPane::AllocElements
Mengalokasikan penyimpanan untuk penggunaan internal.
BOOL AllocElements(
int nElements,
int cbElement);
Parameter
nElements
[di] Jumlah elemen untuk mengalokasikan penyimpanan.
cbElement
[di] Ukuran, dalam byte, dari elemen.
Tampilkan Nilai
FALSE jika alokasi memori gagal; jika tidak, TRUE.
CPane::AllowShowOnPaneMenu
Menentukan apakah panel tercantum dalam daftar panel yang dihasilkan runtime untuk aplikasi.
virtual BOOL AllowShowOnPaneMenu() const;
Tampilkan Nilai
TRUE jika panel ditampilkan dalam daftar; jika tidak, FALSE. Implementasi dasar selalu mengembalikan TRUE.
Keterangan
Aplikasi yang dihasilkan AppWizard berisi opsi menu yang mencantumkan panel yang dikandungnya. Metode ini menentukan apakah panel ditampilkan dalam daftar.
CPane::CalcAvailableSize
Menghitung perbedaan ukuran antara persegi panjang tertentu dan persegi panjang jendela saat ini.
virtual CSize CalcAvailableSize(CRect rectRequired);
Parameter
rectRequired
[di] Persegi panjang yang diperlukan.
Tampilkan Nilai
Perbedaan lebar dan tinggi antara rectRequired dan persegi panjang jendela saat ini.
CPane::CalcInsideRect
Menghitung persegi panjang dalam panel, termasuk batas dan pegangan.
void CalcInsideRect(
CRect& rect,
BOOL bHorz) const;
Parameter
rect
[out] Berisi ukuran dan offset area klien panel.
bHorz
[di] TRUE jika panel berorientasi horizontal; jika tidak, FALSE.
Keterangan
Metode ini dipanggil oleh kerangka kerja ketika harus menghitung ulang tata letak untuk panel. Parameter rect diisi dengan ukuran dan offset area klien panel. Ini termasuk perbatasan dan pegangannya.
CPane::CalcRecentDockedRect
Menghitung persegi panjang yang baru saja ditambakan.
void CalcRecentDockedRect();
Keterangan
Metode ini memperbarui CPane::m_recentDockInfo.
CPane::CalcSize
Menghitung ukuran panel.
virtual CSize CalcSize(BOOL bVertDock);
Parameter
bVertDock
[di] TRUE jika panel sedang ditampung secara vertikal, FALSE jika tidak.
Tampilkan Nilai
Implementasi default metode ini mengembalikan ukuran (0, 0).
Keterangan
Kelas turunan harus mengambil alih metode ini.
CPane::CanBeDocked
Menentukan apakah panel dapat ditampung di panel dasar yang ditentukan.
virtual BOOL CanBeDocked(CBasePane* pDockBar) const;
Parameter
pDockBar
[di] Menentukan panel tempat panel ini akan ditampung.
Tampilkan Nilai
TRUE jika panel ini dapat ditampung di panel dok yang ditentukan; jika tidak, FALSE.
Keterangan
Metode ini biasanya dipanggil oleh kerangka kerja untuk menentukan apakah panel dapat ditambatkan di panel docking yang ditentukan. Untuk menentukan apakah panel dapat ditambatkan, metode mengevaluasi perataan docking panel yang saat ini diaktifkan.
Anda mengaktifkan docking ke berbagai sisi jendela bingkai dengan memanggil CBasePane::EnableDocking.
CPane::CanBeTabbedDocument
Menentukan apakah panel dapat dikonversi ke dokumen bertab.
virtual BOOL CanBeTabbedDocument() const;
Tampilkan Nilai
TRUE jika panel dapat dikonversi ke dokumen bertab; jika tidak, FALSE.
Keterangan
Ambil alih metode ini di kelas turunan dan kembalikan FALSE jika Anda ingin mencegah panel dikonversi ke dokumen bertab. Dokumen bertab tidak akan tercantum di menu Posisi Jendela.
CPane::ConvertToTabbedDocument
Mengonversi panel yang dapat ditautkan ke dokumen bertab.
virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);
Parameter
bActiveTabOnly
[di] Tidak digunakan dalam CPane::ConvertToTabbedDocument
.
Keterangan
Hanya panel yang dapat ditautkan yang dapat dikonversi ke dokumen bertab. Untuk informasi, lihat CDockablePane::ConvertToTabbedDocument.
CPane::CopyState
Menyalin status panel.
virtual void CopyState(CPane* pOrgBar);
Parameter
pOrgBar
[di] Penunjuk ke panel.
Keterangan
Metode ini menyalin status pOrgBar ke panel saat ini.
CPane::Create
Membuat bilah kontrol dan melampirkannya ke objek CPane .
virtual BOOL Create(
LPCTSTR lpszClassName,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID,
DWORD dwControlBarStyle = AFX_DEFAULT_PANE_STYLE,
CCreateContext* pContext = NULL);
Parameter
lpszClassName
[di] Menentukan nama kelas Windows.
dwStyle
[di] Menentukan atribut gaya jendela. Untuk informasi selengkapnya, lihat Gaya Jendela.
rect
[di] Menentukan ukuran dan posisi awal jendela pParentWnd , dalam koordinat klien.
pParentWnd
[masuk, keluar] Menentukan jendela induk panel ini.
Nid
[di] Menentukan ID panel.
dwControlBarStyle
[di] Menentukan gaya untuk panel. Untuk informasi selengkapnya, lihat CBasePane::CreateEx.
pContext
[masuk, keluar] Menentukan konteks pembuatan panel.
Tampilkan Nilai
TRUE jika panel berhasil dibuat; jika tidak, FALSE.
Keterangan
Metode ini membuat panel Windows dan melampirkannya ke CPane
objek.
Jika Anda belum secara eksplisit menginisialisasi CPane::m_recentDockInfo sebelum memanggil Create
, rect parameter akan digunakan sebagai persegi panjang saat mengambang atau menambatkan panel.
CPane::CreateDefaultMiniframe
Membuat jendela bingkai mini untuk panel mengambang.
virtual CPaneFrameWnd* CreateDefaultMiniframe(CRect rectInitial);
Parameter
rectInitial
[di] Menentukan ukuran dan posisi awal, dalam koordinat layar, dari jendela bingkai mini yang akan dibuat.
Tampilkan Nilai
Jendela bingkai mini yang baru dibuat.
Keterangan
Metode ini dipanggil oleh kerangka kerja untuk membuat jendela bingkai mini saat panel mengambang. Jendela bingkai mini dapat berjenis CPaneFrameWnd atau tipe CMultiPaneFrameWnd. Jendela multi bingkai mini dibuat jika panel memiliki gaya AFX_CBRS_FLOAT_MULTI.
Informasi kelas runtime untuk jendela bingkai mini disimpan di CPane::m_pMiniFrameRTC
anggota. Anda dapat menggunakan kelas turunan untuk mengatur anggota ini jika Anda memutuskan untuk membuat jendela bingkai mini yang disesuaikan.
CPane::CreateEx
Membuat bilah kontrol dan melampirkannya ke objek CPane .
virtual BOOL CreateEx(
DWORD dwStyleEx,
LPCTSTR lpszClassName,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID,
DWORD dwControlBarStyle = AFX_DEFAULT_PANE_STYLE,
CCreateContext* pContext = NULL);
Parameter
dwStyleEx
[di] Menentukan atribut gaya jendela yang diperluas. Untuk informasi selengkapnya, lihat Gaya Jendela yang Diperluas.
lpszClassName
[di] Menentukan nama kelas Windows.
dwStyle
[di] Menentukan atribut gaya jendela. Untuk informasi selengkapnya, lihat Gaya Jendela.
rect
[di] Menentukan ukuran dan posisi awal jendela pParentWnd , dalam koordinat klien.
pParentWnd
[masuk, keluar] Menentukan jendela induk panel ini.
Nid
[di] Menentukan ID panel.
dwControlBarStyle
[di] Menentukan gaya untuk panel. Untuk informasi selengkapnya, lihat CBasePane::CreateEx.
pContext
[masuk, keluar] Menentukan konteks buat untuk panel.
Tampilkan Nilai
TRUE jika panel berhasil dibuat; jika tidak, FALSE.
Keterangan
Metode ini membuat panel Windows dan melampirkannya ke CPane
objek.
Jika Anda belum secara eksplisit menginisialisasi CPane::m_recentDockInfo sebelum memanggil CreateEx
, rect parameter akan digunakan sebagai persegi panjang saat mengambang atau menambatkan panel.
CPane::D ockByMouse
Menambungkan panel dengan menggunakan mouse.
virtual BOOL DockByMouse(CBasePane* pDockBar);
Parameter
pDockBar
[di] Menentukan panel dasar yang akan ditampung panel ini.
Tampilkan Nilai
TRUE jika panel berhasil di-dock; jika tidak, FALSE.
CPane::D ockPane
Menambungkan panel mengambang ke panel dasar.
virtual BOOL DockPane(
CBasePane* pDockBar,
LPCRECT lpRect,
AFX_DOCK_METHOD dockMethod);
Parameter
pDockBar
[masuk, keluar] Menentukan panel dasar untuk menambungkan panel ini.
lpRect
[di] Menentukan persegi panjang pada panel dasar tempat panel ini akan ditambakan.
dockMethod
[di] Menentukan metode docking yang akan digunakan. Opsi yang tersedia adalah sebagai berikut:
Opsi | Deskripsi |
---|---|
DM_UNKNOWN | Kerangka kerja menggunakan opsi ini ketika metode docking tidak diketahui. Panel tidak menyimpan posisi mengambang terbarunya. Anda juga dapat menggunakan opsi ini untuk menambatkan panel secara terprogram saat Anda tidak perlu menyimpan posisi mengambang baru-baru ini. |
DM_MOUSE | Digunakan secara internal. |
DM_DBL_CLICK | Opsi ini digunakan ketika gripper diklik dua kali. Panel diposisikan ulang pada posisi docking terbarunya. Jika panel dilepas dengan mengklik ganda, panel diposisikan ulang pada posisi mengambang terbarunya. |
DM_SHOW | Opsi ini dapat digunakan untuk menaikkan panel secara terprogram. Panel menyimpan posisi mengambang terbarunya. |
DM_RECT | Panel ditautkan di wilayah yang ditentukan oleh lpRect. |
DM_STANDARD | Saat Anda menggunakan opsi ini, kerangka kerja menggambar panel sebagai bingkai kerangka saat sedang dipindahkan. |
Tampilkan Nilai
TRUE jika panel berhasil di-dock; jika tidak, FALSE.
Keterangan
Metode ini menambatkan panel ke panel dasar yang ditentukan oleh parameter pDockBar . Anda harus terlebih dahulu mengaktifkan docking dengan memanggil CBasePane::EnableDocking.
CPane::D ockPaneStandard
Menambah panel dengan menggunakan dok kerangka (standar).
virtual CPane* DockPaneStandard(BOOL& bWasDocked);
Parameter
bWasDocked
[di] TRUE jika panel berhasil ditampar; jika tidak, FALSE.
Tampilkan Nilai
Metode ini selalu mengembalikan this
pointer.
Keterangan
Metode ini hanya digunakan untuk panel yang berasal dari Kelas CDockablePane. Untuk informasi selengkapnya, lihat CDockablePane::D ockPaneStandard.
CPane::D ockToFrameWindow
Menambak panel yang dapat ditambat ke bingkai.
virtual BOOL DockToFrameWindow(
DWORD dwAlignment,
LPCRECT lpRect = NULL,
DWORD dwDockFlags = DT_DOCK_LAST,
CBasePane* pRelativeBar = NULL,
int nRelativeIndex = -1,
BOOL bOuterEdge = FALSE);
Parameter
dwAlignment
[di] Sisi bingkai induk yang ingin Anda dock panelnya.
lpRect
[di] Ukuran yang ditentukan.
dwDockFlags
[in] Diabaikan.
pRelativeBar
[in] Diabaikan.
nRelativeIndex
[in] Diabaikan.
bOuterEdge
[di] Jika TRUE dan ada panel lain yang dapat ditambatkan di sisi yang ditentukan oleh dwAlignment, panel ditambatkan di luar panel lain, lebih dekat ke tepi bingkai induk. Jika FALSE, panel ditampung lebih dekat ke tengah area klien.
Tampilkan Nilai
FALSE jika pembagi panel ( Kelas CPaneDivider) tidak dapat dibuat; jika tidak, TRUE.
Keterangan
CPane::D oesAllowSiblingBars
Menunjukkan apakah Anda dapat menambungkan panel lain di baris yang sama tempat panel saat ini ditampung.
virtual BOOL DoesAllowSiblingBars() const;
Tampilkan Nilai
TRUE jika panel ini dapat merapat ke panel lain pada baris yang sama dengan panel tersebut; jika tidak, FALSE.
Keterangan
Anda dapat mengaktifkan atau menonaktifkan perilaku ini dengan memanggil CPane::SetExclusiveRowMode.
Secara default, toolbar memiliki mode baris eksklusif yang dinonaktifkan dan bilah menu memiliki mode baris eksklusif yang diaktifkan.
CPane::FloatPane
Mengambangkan panel.
virtual BOOL FloatPane(
CRect rectFloat,
AFX_DOCK_METHOD dockMethod = DM_UNKNOWN,
bool bShow = true);
Parameter
rectFloat
[di] Menentukan lokasi, dalam koordinat layar, untuk memosisikan panel saat mengambang.
dockMethod
[di] Menentukan metode docking yang akan digunakan saat panel mengambang. Untuk daftar nilai yang mungkin, lihat CPane::D ockPane.
bShow
[di] TRUE untuk memperlihatkan panel saat mengambang; jika tidak, FALSE.
Tampilkan Nilai
TRUE jika panel berhasil diambang atau jika panel tidak dapat diambang karena CBasePane::CanFloat mengembalikan FALSE; jika tidak, FALSE.
Keterangan
Panggil metode ini untuk mengambangkan panel pada posisi yang ditentukan oleh parameter rectFloat . Metode ini secara otomatis membuat jendela bingkai mini induk untuk panel.
CPane::GetAvailableExpandSize
Mengembalikan jumlah, dalam piksel, yang dapat diperluas panel.
virtual int GetAvailableExpandSize() const;
Tampilkan Nilai
Jika panel ditambarkan secara horizontal, nilai yang dikembalikan adalah lebar yang tersedia; jika tidak, nilai yang dikembalikan adalah tinggi yang tersedia.
Keterangan
CPane::GetAvailableStretchSize
Mengembalikan jumlah, dalam piksel, yang dapat menyusutkan panel.
virtual int GetAvailableStretchSize() const;
Tampilkan Nilai
Jumlah, dalam piksel, yang dapat menyusutkan panel. Jika panel ditampar secara horizontal, jumlah ini adalah lebar yang tersedia; jika tidak, itu adalah tinggi yang tersedia.
Keterangan
Ukuran peregangan yang tersedia dihitung dengan mengurangi ukuran minimum yang diizinkan untuk panel ( CPane::GetMinSize) dari ukuran saat ini ( CWnd::GetWindowRect).
CPane::GetBorders
Mengembalikan lebar batas panel.
CRect GetBorders() const;
Tampilkan Nilai
Objek CRect yang berisi lebar saat ini, dalam piksel, dari setiap sisi panel. Misalnya, nilai anggota left
CRect
objek adalah lebar batas kiri.
Keterangan
Untuk mengatur ukuran batas, panggil CPane::SetBorders.
CPane::GetClientHotSpot
Mengembalikan hot spot untuk panel.
CPoint GetClientHotSpot() const;
Tampilkan Nilai
Keterangan
Hot spot adalah titik pada panel yang dipilih dan ditahan pengguna untuk memindahkan panel. Hot spot digunakan untuk animasi halus saat panel dipindahkan dari posisi tertampan.
CPane::GetDockSiteRow
Mengembalikan baris dock ( CDockingPanesRow Class) tempat panel ditambatkan.
CDockingPanesRow* GetDockSiteRow() const;
Tampilkan Nilai
CDockingPanesRow
* yang menunjuk ke baris dock tempat panel ditampar, atau NULL jika panel tidak ditampung.
CPane::GetExclusiveRowMode
Menentukan apakah panel berada dalam mode baris eksklusif.
virtual BOOL GetExclusiveRowMode() const;
Tampilkan Nilai
TRUE jika panel berada dalam mode baris eksklusif; jika tidak, FALSE.
Keterangan
Untuk informasi selengkapnya tentang mode baris eksklusif, lihat CPane::SetExclusiveRowMode.
CPane::GetHotSpot
Mengembalikan hot spot yang disimpan dalam objek yang mendasar CMFCDragFrameImpl
.
CPoint GetHotSpot() const;
Tampilkan Nilai
Keterangan
Kelas CPane
berisi CMFCDragFrameImpl
objek, m_dragFrameImpl
, yang bertanggung jawab untuk menggambar persegi panjang yang muncul saat pengguna memindahkan panel dalam mode docking standar. Hot spot digunakan untuk menggambar persegi relatif terhadap posisi mouse saat ini saat pengguna memindahkan panel.
CPane::GetMinSize
Mengambil ukuran minimum yang diizinkan untuk panel.
virtual void GetMinSize(CSize& size) const;
Parameter
ukuran
[out] Objek CSize
yang diisi dengan ukuran minimum yang diizinkan.
Keterangan
CPane::GetPaneName
Mengambil judul untuk panel.
virtual void GetPaneName(CString& strName) const;
Parameter
strName
[out] Objek CString
yang diisi dengan nama keterangan.
Keterangan
Judul panel ditampilkan di area keterangan saat panel ditampung atau mengambang. Jika panel adalah bagian dari grup bertab, judul ditampilkan di area tab. Jika panel dalam mode sembunyikan otomatis, judul ditampilkan pada CMFCAutoHideButton
.
CPane::GetVirtualRect
Mengambil persegi virtual panel.
void GetVirtualRect(CRect& rectVirtual) const;
Parameter
rectVirtual
[out] Objek CRect
yang diisi dengan persegi virtual.
Keterangan
Saat panel dipindahkan, kerangka kerja menyimpan posisi asli panel dalam persegi panjang virtual. Kerangka kerja dapat menggunakan persegi virtual untuk memulihkan posisi asli panel.
Jangan panggil metode yang terkait dengan persegi virtual kecuali Anda memindahkan panel secara terprogram.
CPane::IsChangeState
Saat panel dipindahkan, metode ini menganalisis posisinya relatif terhadap panel lain, baris dok, dan jendela bingkai mini, dan mengembalikan nilai AFX_CS_STATUS yang sesuai.
virtual AFX_CS_STATUS IsChangeState(
int nOffset,
CBasePane** ppTargetBar) const;
Parameter
nOffset
[di] Menentukan sensitivitas docking. Misalnya, panel yang dipindahkan dalam piksel nOffset dari baris dock akan ditautkan.
ppTargetBar
[di] Ketika metode kembali, ppTargetBar berisi penunjuk ke objek tempat panel saat ini harus ditambatkan, atau NULL jika tidak ada docking yang harus terjadi.
Tampilkan Nilai
Salah satu nilai AFX_CS_STATUS berikut ini:
Nilai | Deskripsi |
---|---|
CS_NOTHING | Panel tidak berada di dekat situs dock. Kerangka kerja tidak menambungkan panel. |
CS_DOCK_IMMEDIATELY | Panel berada di atas situs dock, dan gaya DT_IMMEDIATE diaktifkan. Kerangka kerja segera menambah panel. |
CS_DELAY_DOCK | Panel berada di atas situs dock yang merupakan panel docking lain atau tepi bingkai utama. Kerangka kerja menautkan panel saat pengguna merilis pemindahan. |
CS_DELAY_DOCK_TO_TAB | Panel berada di atas situs dock yang menyebabkan panel ditautkan di jendela bertab. Ini terjadi ketika panel berada di atas keterangan panel docking lain atau di atas area tab panel bertab. Kerangka kerja menautkan panel saat pengguna merilis pemindahan. |
CPane::IsDragMode
Menentukan apakah panel sedang dipindahkan.
virtual BOOL IsDragMode() const;
Tampilkan Nilai
TRUE jika panel sedang dipindahkan; jika tidak, FALSE.
Keterangan
CPane::IsInFloatingMultiPaneFrameWnd
Menentukan apakah panel berada di jendela bingkai multi-panel ( Kelas CMultiPaneFrameWnd).
virtual BOOL IsInFloatingMultiPaneFrameWnd() const;
Tampilkan Nilai
TRUE jika panel berada di jendela bingkai multi-panel; jika tidak, FALSE.
Keterangan
Hanya panel yang dapat ditambat yang dapat mengambang di jendela bingkai multi-panel. Oleh karena itu, CPane::IsInFloatingMultiPaneFrameWnd
selalu mengembalikan FALSE.
CPane::IsLeftOf
Menentukan apakah panel dibiarkan (atau di atas) persegi panjang yang ditentukan.
bool IsLeftOf(
CRect rect,
bool bWindowRect = true) const;
Parameter
rect
[di] Objek CRect
yang digunakan untuk perbandingan.
bWindowRect
[di] Jika TRUE, rect diasumsikan berisi koordinat layar; jika FALSE, rect diasumsikan berisi koordinat klien.
Tampilkan Nilai
Keterangan
Jika panel ditampung secara horizontal, metode ini memeriksa apakah lokasinya tersisa dari rect. Jika tidak, metode ini memeriksa apakah lokasi di atas rect.
CPane::IsResizable
Menentukan apakah panel dapat diubah bentuknya.
virtual BOOL IsResizable() const;
Tampilkan Nilai
TRUE jika panel dapat diubah ukurannya; jika tidak, FALSE.
Keterangan
Objek dasar CPane
tidak dapat diubah ukurannya.
Manajer docking menggunakan bendera yang dapat diubah ukurannya untuk menentukan tata letak panel. Panel yang tidak dapat diubah ukurannya selalu terletak di tepi luar bingkai induk.
Panel yang tidak dapat diubah ulang tidak dapat berada di kontainer docking.
CPane::IsTabbed
Menentukan apakah panel telah disisipkan ke dalam kontrol tab jendela bertab.
virtual BOOL IsTabbed() const;
Tampilkan Nilai
TRUE jika panel ditab; jika tidak, FALSE.
Keterangan
Status bertab diperlakukan secara terpisah dari status mengambang, ditampung, dan disembunyikan secara otomatis.
CPane::LoadState
Memuat status panel dari registri.
virtual BOOL LoadState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT) -1);
Parameter
lpszProfileName
[di] Nama profil.
nIndex
[di] Indeks profil.
uiID
[di] ID Panel.
Tampilkan Nilai
TRUE jika status panel berhasil dimuat; jika tidak, FALSE.
Keterangan
Kerangka kerja memanggil metode ini untuk memuat status panel dari registri. Ambil alih di kelas turunan untuk memuat informasi tambahan yang disimpan oleh CPane::SaveState.
Saat Anda mengambil alih metode ini, panggil juga metode dasar, dan kembalikan FALSE jika metode dasar mengembalikan FALSE.
CPane::m_bHandleMinSize
Memungkinkan penanganan ukuran panel minimum yang konsisten.
AFX_IMPORT_DATA static BOOL m_bHandleMinSize;
Keterangan
Jika satu atau beberapa panel docking di aplikasi Anda mengambil GetMinSize
alih , atau jika aplikasi Anda memanggil SetMinSize
, Anda mungkin ingin mengatur anggota statis ini ke TRUE untuk memungkinkan kerangka kerja menangani secara konsisten bagaimana panel berukuran.
Jika nilai ini diatur ke TRUE, semua panel yang ukurannya harus dikurangi di bawah ukuran minimumnya dipotong, tidak direntangkan. Karena kerangka kerja menggunakan wilayah jendela untuk tujuan ukuran panel, jangan ubah ukuran wilayah jendela untuk panel docking jika nilai ini diatur ke TRUE.
CPane::m_recentDockInfo
Berisi informasi docking baru-baru ini.
CRecentDockSiteInfo m_recentDockInfo;
Keterangan
Kerangka kerja menyimpan informasi status docking terbaru untuk panel di anggota ini.
CPane::MoveByAlignment
Memindahkan panel dan persegi virtual dengan jumlah yang ditentukan.
BOOL MoveByAlignment(
DWORD dwAlignment,
int nOffset);
Parameter
dwAlignment
[di] Menentukan perataan panel.
nOffset
[di] Jumlah, dalam piksel, untuk memindahkan panel dan persegi panjang virtual.
Tampilkan Nilai
Keterangan
dwAlignment dapat berupa salah satu nilai berikut:
Nilai | Deskripsi |
---|---|
CBRS_ALIGN_TOP | Memungkinkan panel ditambatkan ke bagian atas area klien dari jendela bingkai. |
CBRS_ALIGN_BOTTOM | Memungkinkan panel ditambatkan ke bagian bawah area klien jendela bingkai. |
CBRS_ALIGN_LEFT | Memungkinkan panel ditambatkan ke sisi kiri area klien dari jendela bingkai. |
CBRS_ALIGN_RIGHT | Memungkinkan panel ditambatkan ke sisi kanan area klien dari jendela bingkai. |
CBRS_ALIGN_ANY | Memungkinkan panel ditambatkan ke sisi mana pun dari area klien dari jendela bingkai. |
Jika dwAlignment berisi bendera CBRS_ALIGN_LEFT atau CBRS_ALIGN_RIGHT, panel dan persegi virtual dipindahkan secara horizontal; jika tidak, jika dwAlignment berisi bendera CBRS_ALIGN_TOP atau CBRS_ALIGN_BOTTOM, panel dan persegi virtual dipindahkan secara vertikal.
CPane::MovePane
Memindahkan panel ke persegi panjang yang ditentukan.
virtual CSize MovePane(
CRect rectNew,
BOOL bForceMove,
HDWP& hdwp);
Parameter
rectNew
[di] Menentukan persegi panjang baru untuk panel.
bForceMove
[di] Jika TRUE, metode ini mengabaikan ukuran panel minimum yang diizinkan ( CPane::GetMinSize); jika tidak, panel disesuaikan, jika perlu, untuk memastikan bahwa itu setidaknya ukuran minimum yang diizinkan.
hdwp
[in] Tidak digunakan.
Tampilkan Nilai
Objek CSize
yang berisi perbedaan lebar dan tinggi antara persegi panjang baru dan lama (persegi panjang lama - rectNew).
Keterangan
Metode ini hanya digunakan untuk panel yang dapat di-dok.
CPane::OnAfterChangeParent
Dipanggil oleh kerangka kerja saat induk panel telah berubah.
virtual void OnAfterChangeParent(CWnd* pWndOldParent);
Parameter
pWndOldParent
[masuk, keluar] Jendela induk panel sebelumnya.
Keterangan
Metode ini dipanggil oleh kerangka kerja ketika induk panel telah berubah karena operasi docking atau floating.
CPane::OnAfterDock
Dipanggil oleh kerangka kerja saat panel telah ditambatkan.
virtual void OnAfterDock(
CBasePane* pBar,
LPCRECT lpRect,
AFX_DOCK_METHOD dockMethod);
Parameter
pBar
[di] Parameter ini tidak digunakan.
lpRect
[di] Parameter ini tidak digunakan.
dockMethod
[di] Parameter ini tidak digunakan.
CPane::OnAfterFloat
Dipanggil oleh kerangka kerja setelah panel mengambang.
virtual void OnAfterFloat();
Keterangan
Anda dapat mengambil alih metode ini di kelas turunan jika Anda ingin melakukan pemrosesan apa pun setelah panel mengambang.
CPane::OnBeforeChangeParent
Dipanggil oleh kerangka kerja saat induk panel akan berubah.
virtual void OnBeforeChangeParent(
CWnd* pWndNewParent,
BOOL bDelay = FALSE);
Parameter
pWndNewParent
[masuk, keluar] Menentukan jendela induk baru.
bDelay
[di] TRUE untuk menunda penyesuaian tata letak docking global; jika tidak, FALSE.
Keterangan
Metode ini dipanggil oleh kerangka kerja ketika induk panel akan berubah karena panel sedang ditambatkan atau diambang.
Secara default, panel tidak terdaftar dengan panel docking dengan memanggil CDockSite::RemovePane
.
CPane::OnBeforeDock
Dipanggil oleh kerangka kerja saat panel akan menambak.
virtual BOOL OnBeforeDock(
CBasePane** ppDockBar,
LPCRECT lpRect,
AFX_DOCK_METHOD dockMethod);
Parameter
ppDockBar
[masuk, keluar] Menentukan panel tempat panel ini ditampung.
lpRect
[di] Menentukan persegi panjang docking.
dockMethod
[di] Menentukan metode docking.
Tampilkan Nilai
TRUE jika panel dapat di-dock. Jika fungsi mengembalikan FALSE, operasi docking akan dibatalkan.
Keterangan
Metode ini dipanggil oleh kerangka kerja ketika panel akan ditambatkan. Anda dapat mengambil alih metode ini di kelas turunan jika Anda ingin melakukan pemrosesan apa pun sebelum panel akhirnya ditampung.
CPane::OnBeforeFloat
Dipanggil oleh kerangka kerja saat panel akan mengambang.
virtual BOOL OnBeforeFloat(
CRect& rectFloat,
AFX_DOCK_METHOD dockMethod);
Parameter
rectFloat
[di] Menentukan posisi dan ukuran panel saat berada dalam status mengambang.
dockMethod
[di] Menentukan metode docking panel.
Tampilkan Nilai
TRUE jika panel dapat diambang; jika tidak, FALSE.
Keterangan
Metode ini dipanggil oleh kerangka kerja ketika panel akan mengambang. Anda dapat mengambil alih metode ini di kelas turunan jika Anda ingin melakukan pemrosesan apa pun sebelum panel akhirnya mengambang.
CPane::OnPressCloseButton
Dipanggil oleh kerangka kerja saat pengguna menekan tombol tutup pada keterangan untuk panel.
virtual void OnPressCloseButton();
Keterangan
Metode ini dipanggil oleh kerangka kerja saat pengguna menekan tombol Tutup pada keterangan panel. Untuk menerima pemberitahuan tentang peristiwa Tutup , Anda dapat mengambil alih metode ini di kelas turunan.
CPane::OnShowControlBarMenu
Dipanggil oleh kerangka kerja saat menu panel khusus akan ditampilkan.
virtual BOOL OnShowControlBarMenu(CPoint point);
Parameter
ujung
[di] Menentukan lokasi menu.
Tampilkan Nilai
TRUE jika menu dapat ditampilkan; jika tidak, FALSE.
Keterangan
Menu berisi beberapa item yang memungkinkan Anda menentukan perilaku panel, yaitu: Floating, Docking, AutoHide, dan Hide. Anda dapat mengaktifkan menu ini untuk semua panel dengan memanggil CDockingManager::EnableDockSiteMenu.
CPane::RecalcLayout
Menghitung ulang informasi tata letak untuk panel.
virtual void RecalcLayout();
Keterangan
Jika panel ditampung, metode ini memperbarui persegi virtual untuk panel dengan mengatur ukurannya ke ukuran panel saat ini.
Jika panel mengambang, metode ini memberi tahu bingkai mini induk untuk menyesuaikan ukuran panel dengan ukuran bingkai mini. Kerangka kerja memastikan bahwa bingkai mini setidaknya merupakan ukuran minimum yang diizinkan untuk panel ( CPane::GetMinSize) dan mengubah ukuran bingkai mini jika perlu.
CPane::SaveState
Menyimpan status panel ke registri.
virtual BOOL SaveState(
LPCTSTR lpszProfileName = NULL,
int nIndex = -1,
UINT uiID = (UINT) -1);
Parameter
lpszProfileName
[di] Nama profil.
nIndex
[di] Indeks profil.
uiID
[di] ID Panel.
Tampilkan Nilai
TRUE jika status berhasil disimpan; jika tidak, FALSE.
Keterangan
Kerangka kerja memanggil metode ini saat menyimpan status panel ke registri. Ambil alih SaveState
di kelas turunan untuk menyimpan informasi tambahan.
Saat Anda mengambil alih metode ini, panggil juga metode dasar, dan kembalikan FALSE jika metode dasar mengembalikan FALSE.
CPane::SetActiveInGroup
Menandai panel sebagai aktif.
virtual void SetActiveInGroup(BOOL bActive);
Parameter
bActive
[di] BOOL yang menentukan apakah panel ditandai sebagai aktif.
Keterangan
Saat panel yang dapat ditampakkan ditampilkan atau tombol sembunyikan otomatis dipilih, panel sembunyikan otomatis yang sesuai ditandai sebagai aktif.
Tampilan tombol sembunyikan otomatis yang terkait dengan panel didasarkan pada dua faktor. Jika panel aktif, dan static BOOL CMFCAutoHideButton::m_bOverlappingTabs
adalah TRUE, kerangka kerja menampilkan tombol sembunyikan otomatis sebagai ikon dan label. Untuk panel tidak aktif, kerangka kerja hanya menampilkan ikon sembunyikan otomatis.
Jika CMFCAutoHideButton::m_bOverlappingTabs
FALSE, atau jika panel tidak berada dalam grup, kerangka kerja menampilkan tombol sembunyikan otomatis terkait sebagai ikon dan label.
CPane::SetBorders
Mengatur nilai batas panel.
void SetBorders(
int cxLeft = 0,
int cyTop = 0,
int cxRight = 0,
int cyBottom = 0);
void SetBorders(LPCRECT lpRect);
Parameter
cxLeft
[di] Menentukan lebar, dalam piksel, dari batas kiri panel.
cyTop
[di] Menentukan lebar, dalam piksel, dari batas atas panel.
cxRight
[di] Menentukan lebar, dalam piksel, dari batas kanan panel.
cyBottom
[di] Menentukan lebar, dalam piksel, dari batas bawah panel.
lpRect
[di] Objek CRect yang berisi lebar, dalam piksel, dari setiap batas panel.
Keterangan
Panggil fungsi ini untuk mengatur ukuran batas panel.
CPane::SetClientHotSpot
Mengatur hot spot untuk panel.
void SetClientHotSpot(const CPoint& ptNew);
Parameter
ptNew
[di] Objek CPoint
yang menentukan hot spot baru.
Keterangan
Hot spot adalah titik pada panel yang dipilih dan ditahan pengguna untuk memindahkan panel. Hot spot digunakan untuk animasi halus saat panel diseret dari posisi tertambas.
CPane::SetDockState
Memulihkan informasi status docking untuk panel.
virtual void SetDockState(CDockingManager* pDockManager);
Parameter
pDockManager
[di] Arahkan ke manajer docking untuk jendela bingkai utama.
Keterangan
Metode ini dipanggil oleh kerangka kerja untuk memulihkan informasi status docking terbaru untuk panel. Panel menyimpan informasi status docking terbaru di CPane::m_recentDockInfo. Untuk informasi selengkapnya, lihat Kelas CRecentDockSiteInfo.
Anda juga dapat memanggil metode ini untuk mengatur status docking saat Memuat informasi panel dari sumber eksternal.
CPane::SetExclusiveRowMode
Mengaktifkan atau menonaktifkan mode baris eksklusif.
virtual void SetExclusiveRowMode(BOOL bExclusive = TRUE);
Parameter
bExclusive
[di] TRUE untuk mengaktifkan mode baris eksklusif; jika tidak, FALSE.
Keterangan
Panggil metode ini untuk mengaktifkan atau menonaktifkan mode baris eksklusif. Saat panel berada dalam mode baris eksklusif, panel tidak dapat berbagi baris yang sama dengan toolbar lainnya.
Secara default, semua toolbar memiliki mode baris eksklusif yang dinonaktifkan dan bilah menu memiliki mode baris eksklusif yang diaktifkan.
CPane::SetMinSize
Mengatur ukuran minimum yang diizinkan untuk panel.
void SetMinSize(const CSize& size);
Parameter
ukuran
[di] Objek CSize
yang berisi ukuran minimum yang diizinkan untuk panel.
Keterangan
CPane::SetVirtualRect
Mengatur persegi virtual panel.
void SetVirtualRect(
const CRect& rect,
BOOL bMapToParent = TRUE);
Parameter
rect
[di] Objek CRect
yang menentukan persegi virtual yang akan diatur.
bMapToParent
[di] Tentukan TRUE jika rect berisi poin relatif terhadap jendela induk.
Keterangan
Persegi panjang virtual menyimpan posisi asli panel saat dipindahkan. Kerangka kerja dapat menggunakan persegi virtual untuk memulihkan posisi asli.
Jangan panggil metode yang terkait dengan persegi virtual kecuali Anda memindahkan panel secara terprogram.
CPane::SetMiniFrameRTC
Mengatur informasi kelas runtime untuk jendela bingkai mini default.
void SetMiniFrameRTC(CRuntimeClass* pClass);
Parameter
pClass
[masuk, keluar] Menentukan informasi kelas runtime untuk jendela bingkai mini.
Keterangan
Saat panel mengambang, panel diletakkan di jendela CPaneFrameWnd (bingkai-mini). Anda dapat menyediakan kelas khusus CPaneFrameWnd
-turunan yang akan digunakan saat CPane::CreateDefaultMiniframe dipanggil.
CPane::StretchPaneDeferWndPos
Membentangkan panel secara vertikal atau horizontal berdasarkan gaya dok.
virtual int StretchPaneDeferWndPos(
int nStretchSize,
HDWP& hdwp);
Parameter
nStretchSize
[di] Jumlah, dalam piksel, untuk membentangkan panel. Gunakan nilai negatif untuk menyusutkan panel.
hdwp
[in] Tidak digunakan.
Tampilkan Nilai
Jumlah aktual, dalam piksel, yang direntangkan panel.
Keterangan
Jika perlu, metode ini memodifikasi nStretchSize untuk memastikan bahwa panel tidak melebihi batas ukuran. Batas ini diperoleh dengan memanggil CPane::GetAvailableStretchSize dan CPane::GetAvailableExpandSize.
CPane::ToggleAutoHide
Mengalihkan mode sembunyikan otomatis.
virtual void ToggleAutoHide();
Keterangan
Panggil metode ini untuk mengalihkan mode sembunyikan otomatis. Panel harus ditambatkan ke jendela bingkai utama agar dapat beralih ke mode sembunyikan otomatis.
CPane::UndockPane
Menghapus panel dari situs dock, slider default, atau jendela bingkai mini tempat panel tersebut saat ini ditambatkan.
virtual void UndockPane(BOOL bDelay = FALSE);
Parameter
bDelay
[di] Jika FALSE, kerangka kerja memanggil CBasePane::AdjustDockingLayout untuk menyesuaikan tata letak docking.
Keterangan
Gunakan metode ini untuk membatalkan panel secara terprogram.
CPane::UpdateVirtualRect
Memperbarui persegi virtual.
void UpdateVirtualRect();
void UpdateVirtualRect(CPoint ptOffset);
void UpdateVirtualRect(CSize sizeNew);
Parameter
ptOffset
[di] Objek CPoint
yang menentukan offset untuk menggeser panel.
sizeNew
[di] Objek CSize
yang menentukan ukuran baru untuk panel.
Keterangan
Kelebihan beban pertama mengatur persegi virtual dengan menggunakan posisi dan ukuran panel saat ini.
Kelebihan beban kedua menggeser persegi virtual dengan jumlah yang ditentukan oleh ptOffset.
Kelebihan beban ketiga mengatur persegi virtual dengan menggunakan posisi panel saat ini dan ukuran yang ditentukan oleh ukuranBaru.