CDockablePane Kelas

Menerapkan panel yang dapat ditautkan di situs dock atau disertakan dalam panel bertab.

Sintaks

class CDockablePane : public CPane

Anggota

Konstruktor Publik

Nama Deskripsi
CDockablePane::CDockablePane Membuat dan menginisialisasi CDockablePane objek.

Metode Publik

Nama Deskripsi
CDockablePane::AttachToTabWnd Melampirkan panel ke panel lain. Ini membuat panel bertab.
CDockablePane::CalcFixedLayout Mengembalikan ukuran persegi panel.
CDockablePane::CanAcceptMiniFrame Menentukan apakah bingkai mini yang ditentukan dapat ditambatkan ke panel.
CDockablePane::CanAcceptPane Menentukan apakah panel lain dapat ditampung ke panel saat ini.
CDockablePane::CanAutoHide Menentukan apakah panel mendukung mode sembunyikan otomatis. (Mengambil alih CBasePane::CanAutoHide.)
CDockablePane::CanBeAttached Menentukan apakah panel saat ini dapat ditampung ke panel lain.
CDockablePane::ConvertToTabbedDocument Mengonversi satu atau beberapa panel yang dapat ditautkan ke dokumen bertab MDI.
CDockablePane::CopyState Menyalin status panel yang dapat di-dok.
CDockablePane::Create Membuat kontrol Windows dan melampirkannya ke CDockablePane objek.
CDockablePane::CreateDefaultPaneDivider Membuat pembagi default untuk panel saat sedang ditambatkan ke jendela bingkai.
CDockablePane::CreateEx Membuat kontrol Windows dan melampirkannya ke CDockablePane objek.
CDockablePane::CreateTabbedPane Membuat panel bertab dari panel saat ini.
CDockablePane::DockPaneContainer Menambungkan kontainer ke panel.
CDockablePane::DockPaneStandard Menambah panel dengan menggunakan dok kerangka (standar).
CDockablePane::DockToFrameWindow Digunakan secara internal. Untuk menambungkan panel, gunakan CPane::DockPane atau CDockablePane::DockToWindow.
CDockablePane::DockToRecentPos Menambatkan panel ke posisi docking terbaru yang disimpan.
CDockablePane::DockToWindow Menamamkan satu panel dock ke panel docking lain.
CDockablePane::EnableAutohideAll Mengaktifkan atau menonaktifkan mode sembunyikan otomatis untuk panel ini bersama dengan panel lain dalam kontainer.
CDockablePane::EnableGripper Memperlihatkan atau menyembunyikan keterangan (pencengkeram).
CDockablePane::GetAHRestoredRect Menentukan posisi panel saat terlihat dalam mode sembunyikan otomatis.
CDockablePane::GetAHSlideMode Mengambil mode sembunyikan slide otomatis untuk panel.
CDockablePane::GetAutoHideButton Digunakan secara internal.
CDockablePane::GetAutoHideToolBar Digunakan secara internal.
CDockablePane::GetCaptionHeight Mengembalikan tinggi keterangan saat ini.
CDockablePane::GetDefaultPaneDivider Mengembalikan pembagi panel default untuk kontainer panel.
CDockablePane::GetDockingStatus Menentukan kemampuan panel untuk di-dock berdasarkan lokasi penunjuk yang disediakan.
CDockablePane::GetDragSensitivity Mengembalikan sensitivitas seret panel docking.
CDockablePane::GetLastPercentInPaneContainer Mengambil persentase ruang yang diduduki panel dalam kontainernya.
CDockablePane::GetTabArea Mengambil area tab untuk panel.
CDockablePane::GetTabbedPaneRTC Mengembalikan informasi kelas runtime tentang jendela bertab yang dibuat saat panel lain menambah ke panel saat ini.
CDockablePane::HasAutoHideMode Menentukan apakah panel docking dapat dialihkan ke mode sembunyikan otomatis.
CDockablePane::HitTest Menentukan lokasi tertentu di panel tempat pengguna mengklik mouse.
CDockablePane::IsAccessibilityCompatible Digunakan secara internal.
CDockablePane::IsAutohideAllEnabled Menunjukkan apakah panel docking dan semua panel lain dalam kontainer dapat ditempatkan dalam mode sembunyikan otomatis.
CDockablePane::IsAutoHideMode Menentukan apakah panel berada dalam mode sembunyikan otomatis.
CDockablePane::IsChangeState Digunakan secara internal.
CDockablePane::IsDocked Menentukan apakah panel saat ini ditampung.
CDockablePane::IsHideInAutoHideMode Menentukan perilaku panel yang berada dalam mode sembunyikan otomatis jika ditampilkan (atau disembunyikan) dengan memanggil ShowPane.
CDockablePane::IsInFloatingMultiPaneFrameWnd Menentukan apakah panel berada di jendela bingkai multi-panel.
CDockablePane::IsResizable Menentukan apakah panel dapat diubah bentuknya.
CDockablePane::IsTabLocationBottom Menentukan apakah tab terletak di bagian atas atau bawah panel.
CDockablePane::IsTracked Menentukan apakah panel sedang diseret oleh pengguna.
CDockablePane::IsVisible Menentukan apakah panel saat ini terlihat.
CDockablePane::LoadState Digunakan secara internal.
CDockablePane::OnAfterChangeParent Dipanggil oleh kerangka kerja saat induk panel telah berubah. (Mengambil alih CPane::OnAfterChangeParent.)
CDockablePane::OnAfterDockFromMiniFrame Dipanggil oleh kerangka kerja ketika bilah dok mengambang berlabuh di jendela bingkai.
CDockablePane::OnBeforeChangeParent Dipanggil oleh kerangka kerja saat induk panel akan berubah. (Mengambil alih CPane::OnBeforeChangeParent.)
CDockablePane::OnBeforeFloat Dipanggil oleh kerangka kerja saat panel akan mengambang. (Mengambil alih CPane::OnBeforeFloat.)
CDockablePane::RemoveFromDefaultPaneDividier Kerangka kerja memanggil metode ini saat panel dilepas.
CDockablePane::ReplacePane Mengganti panel dengan panel tertentu.
CDockablePane::RestoreDefaultPaneDivider Kerangka kerja memanggil metode ini sebagai panel dideserialisasi untuk memulihkan pembagi panel default.
CDockablePane::SaveState Digunakan secara internal.
CDockablePane::Serialize Menserialisasikan panel. (Mengambil alih CBasePane::Serialize.)
CDockablePane::SetAutoHideMode Beralih ke panel docking antara mode terlihat dan sembunyikan otomatis.
CDockablePane::SetAutoHideParents Mengatur tombol sembunyikan otomatis dan sembunyikan bilah alat otomatis untuk panel.
CDockablePane::SetDefaultPaneDivider Digunakan secara internal.
CDockablePane::SetLastPercentInPaneContainer Mengatur persentase ruang yang diduduki panel dalam kontainernya.
CDockablePane::SetResizeMode Digunakan secara internal.
CDockablePane::SetRestoredDefaultPaneDivider Mengatur pembagi panel default yang dipulihkan.
CDockablePane::SetTabbedPaneRTC Mengatur informasi kelas runtime untuk jendela bertab yang dibuat saat dua panel ditambatkan bersama-sama.
CDockablePane::ShowPane Memperlihatkan atau menyembunyikan panel.
CDockablePane::Slide Memperlihatkan atau menyembunyikan panel dengan animasi geser yang hanya ditampilkan saat panel dalam mode sembunyikan otomatis.
CDockablePane::ToggleAutoHide Mengalihkan mode sembunyikan otomatis. (Mengambil alih CPane::ToggleAutoHide .)
CDockablePane::UndockPane Batalkan penambahan panel dari jendela bingkai utama atau kontainer jendela miniframe.
CDockablePane::UnSetAutoHideMode Digunakan secara internal. Untuk mengatur mode sembunyikan otomatis, gunakan CDockablePane::SetAutoHideMode

Metode yang Dilindungi

Nama Deskripsi
CDockablePane::CheckAutoHideCondition Menentukan apakah panel docking disembunyikan (dalam mode sembunyikan otomatis).
CDockablePane::CheckStopSlideCondition Menentukan kapan panel docking sembunyikan otomatis harus berhenti geser.
CDockablePane::DrawCaption Menggambar keterangan panel docking (gripper).
CDockablePane::OnPressButtons Dipanggil saat pengguna menekan tombol keterangan selain tombol AFX_HTCLOSE dan AFX_HTMAXBUTTON .
CDockablePane::OnSlide Dipanggil oleh kerangka kerja untuk merender efek sembunyikan slide secara otomatis saat panel diperlihatkan atau disembunyikan.

Anggota Data

Nama Deskripsi
CDockablePane::m_bDisableAnimation Menentukan apakah animasi sembunyikan otomatis panel yang dapat di-dok dinonaktifkan.
CDockablePane::m_bHideInAutoHideMode Menentukan perilaku panel saat panel berada dalam mode sembunyikan otomatis.
CDockablePane::m_nSlideSteps Menentukan kecepatan animasi panel saat ditampilkan atau disembunyikan saat dalam mode sembunyikan otomatis.

Keterangan

CDockablePane menerapkan fungsionalitas berikut:

  • Menambungkan panel ke jendela bingkai utama.

  • Mengalihkan panel ke mode sembunyikan otomatis.

  • Melampirkan panel ke jendela bertab.

  • Mengambangkan panel di jendela miniframe.

  • Menambatkan panel ke panel lain yang mengambang di jendela miniframe.

  • Mengubah ukuran panel.

  • Memuat dan menyimpan status untuk panel docking.

    Catatan

    Informasi status disimpan ke registri Windows.

  • Membuat panel dengan atau tanpa keterangan. Keterangan dapat memiliki label teks dan dapat diisi dengan warna gradien.

  • Menyeret panel saat menampilkan konten panel

  • Menyeret panel sambil menampilkan persegi panjang seret.

Untuk menggunakan panel docking di aplikasi Anda, dapatkan kelas panel Anda dari CDockablePane kelas . Sematkan objek turunan ke objek jendela bingkai utama atau ke objek jendela yang mengontrol instans panel Anda. Kemudian panggil CDockablePane::Create metode atau CDockablePane::CreateEx metode saat Anda memproses WM_CREATE pesan di jendela bingkai utama. Terakhir, siapkan objek panel dengan memanggil CBasePane::EnableDocking, , CBasePane::DockPaneatau CDockablePane::AttachToTabWnd.

Tips Kustomisasi

Tips berikut berlaku untuk CDockablePane objek:

  • Jika Anda memanggil CDockablePane::AttachToTabWnd dua panel yang tidak bertab, dapat ditautkan, penunjuk ke jendela bertab akan dikembalikan dalam ppTabbedControlBar parameter . Anda dapat terus menambahkan tab ke jendela bertab dengan menggunakan parameter ini.

  • Jenis panel bertab yang dibuat oleh CDockablePane::AttachToTabWnd ditentukan oleh CDockablePane objek dalam pTabControlBarAttachTo parameter . Anda bisa memanggil CDockablePane::SetTabbedPaneRTC untuk mengatur jenis panel bertab yang CDockablePane akan dibuat. Jenis default ditentukan oleh dwTabbedStyleCDockablePane::Create kapan Anda pertama kali CDockablePanemembuat . Jika dwTabbedStyle adalah AFX_CBRS_OUTLOOK_TABS jenis defaultnya adalah CMFCOutlookBar Kelas; jika dwTabbedStyle adalah AFX_CBRS_REGULAR_TABS jenis defaultnya adalah CTabbedPane Kelas.

  • Jika Anda ingin menambungkan satu panel yang dapat di-dok ke panel lain, panggil CDockablePane::DockToWindow metode . Panel asli harus ditampung di suatu tempat sebelum Anda memanggil metode ini.

  • Variabel CDockablePane::m_bHideInAutoHideMode anggota mengontrol bagaimana panel yang dapat ditampung beraksi dalam mode sembunyikan otomatis saat Anda memanggil CDockablePane::ShowPane. Jika variabel anggota ini diatur ke TRUE, panel yang dapat di-dock dan tombol sembunyikan otomatis mereka akan disembunyikan. Jika tidak, mereka akan meluncur masuk dan keluar.

  • Anda dapat menonaktifkan animasi sembunyikan otomatis dengan mengatur CDockablePane::m_bDisableAnimation variabel anggota ke TRUE.

Contoh

Contoh berikut menunjukkan cara mengonfigurasi CDockablePane objek dengan menggunakan berbagai metode di CDockablePane kelas . Contoh ini menggambarkan cara mengaktifkan fitur sembunyikan otomatis semua untuk panel yang dapat ditambatkan, mengaktifkan keterangan atau pencengkeram, mengaktifkan mode sembunyikan otomatis, menampilkan panel, dan menganimasikan panel yang berada dalam mode sembunyikan otomatis. Cuplikan kode ini adalah bagian dari sampel Demo Visual Studio.

// GetOwner is an inherited method.
CDockablePane *pParentBar = DYNAMIC_DOWNCAST(CDockablePane, GetOwner());
pParentBar->EnableAutohideAll();
pParentBar->EnableGripper(true);
pParentBar->SetAutoHideMode(true, CBRS_ALIGN_LEFT);
pParentBar->ShowPane(true, false, true);
pParentBar->Slide(true);

Hierarki Warisan

CObject

CCmdTarget

CWnd

CBasePane

CPane

CDockablePane

Persyaratan

Header:afxDockablePane.h

CDockablePane::AttachToTabWnd

Melampirkan panel saat ini ke panel target, membuat panel bertab.

virtual CDockablePane* AttachToTabWnd(
    CDockablePane* pTabControlBarAttachTo,
    AFX_DOCK_METHOD dockMethod,
    BOOL bSetActive= TRUE,
    CDockablePane** ppTabbedControlBar = NULL);

Parameter

pTabControlBarAttachTo
[masuk, keluar] Menentukan panel target yang dilampirkan panel saat ini. Panel target harus berupa panel yang dapat di-dock.

dockMethod
[di] Menentukan metode docking.

bSetActive
[di] TRUE untuk mengaktifkan panel bertab setelah operasi lampirkan; jika tidak, FALSE.

ppTabbedControlBar
[out] Berisi panel bertab yang dihasilkan dari operasi lampirkan.

Tampilkan Nilai

Penunjuk ke panel saat ini, jika bukan panel bertab; jika tidak, penunjuk ke panel bertab yang dihasilkan dari operasi lampirkan. Nilai yang dikembalikan adalah NULL jika panel saat ini tidak dapat dilampirkan, atau jika terjadi kesalahan.

Keterangan

Saat satu panel yang dapat ditampung dilampirkan ke panel lain menggunakan metode ini, hal berikut ini terjadi:

  1. Kerangka kerja memeriksa apakah panel pTabControlBarAttachTo target adalah panel docking biasa atau jika berasal dari CBaseTabbedPane.

  2. Jika panel target adalah panel bertab, kerangka kerja menambahkan panel saat ini sebagai tab.

  3. Jika panel target adalah panel docking biasa, kerangka kerja akan membuat panel bertab.

    • Kerangka kerja memanggil pTabControlBarAttachTo->CreateTabbedPane. Gaya panel bertab baru bergantung pada m_pTabbedControlBarRTC anggota. Secara default, anggota ini diatur ke kelas runtime .CTabbedPane Jika Anda meneruskan AFX_CBRS_OUTLOOK_TABS gaya sebagai dwTabbedStyle parameter ke CDockablePane::Create metode , objek kelas runtime diatur ke kelas CMFCOutlookBarruntime . Anda dapat mengubah anggota ini kapan saja untuk mengubah gaya panel baru.

    • Saat metode ini membuat panel bertab, kerangka kerja mengganti penunjuk ke pTabControlBarAttachTo (jika panel ditambatkan atau mengambang di jendela multi-miniframe) dengan penunjuk ke panel bertab baru.

    • Kerangka kerja menambahkan panel pTabControlBarAttachTo ke panel bertab sebagai tab pertama. Kerangka kerja kemudian menambahkan panel saat ini sebagai tab kedua.

  4. Jika panel saat ini berasal dari CBaseTabbedPane, semua tabnya dipindahkan ke pTabControlBarAttachTo dan panel saat ini dihancurkan. Oleh karena itu, berhati-hatilah saat Anda memanggil metode ini, karena penunjuk ke panel saat ini mungkin tidak valid ketika metode kembali.

Jika Anda melampirkan satu panel ke panel lain saat membuat tata letak docking, atur dockMethod ke DM_SHOW.

Anda harus menambungkan panel pertama sebelum melampirkan panel lain ke panel tersebut.

CDockablePane::CalcFixedLayout

Mengembalikan ukuran persegi panel.

virtual CSize CalcFixedLayout(
    BOOL bStretch,
    BOOL bHorz);

Parameter

bStretch
[in] Tidak digunakan.

bHorz
[in] Tidak digunakan.

Tampilkan Nilai

Objek CSize yang berisi ukuran persegi panel.

CDockablePane::CanAcceptMiniFrame

Menentukan apakah bingkai mini yang ditentukan dapat ditambatkan ke panel.

virtual BOOL CanAcceptMiniFrame(CPaneFrameWnd* pMiniFrame) const;

Parameter

pMiniFrame
[di] Penunjuk CPaneFrameWnd ke objek.

Tampilkan Nilai

TRUE jika pMiniFrame dapat ditampar ke panel; jika tidak, FALSE.

CDockablePane::CanAcceptPane

Menentukan apakah panel lain dapat ditampung ke panel saat ini.

virtual BOOL CanAcceptPane(const CBasePane* pBar) const;

Parameter

pBar
[di] Menentukan panel untuk ditampung ke panel saat ini.

Tampilkan Nilai

TRUE jika panel yang ditentukan dapat ditampung ke panel ini; jika tidak, FALSE.

Keterangan

Kerangka kerja memanggil metode ini sebelum panel ditambatkan ke panel saat ini.

Ambil alih fungsi ini di kelas turunan untuk mengaktifkan atau menonaktifkan docking ke panel tertentu.

Secara default, metode ini mengembalikan jika salah satu pBar atau induknya berjenis TRUECDockablePane.

CDockablePane::CanAutoHide

Menentukan apakah panel dapat disembunyikan secara otomatis.

virtual BOOL CanAutoHide() const;

Tampilkan Nilai

TRUE jika panel dapat menyembunyikan secara otomatis; jika tidak, FALSE.

Keterangan

CDockablePane::CanAutoHideFALSE mengembalikan dalam salah satu situasi berikut:

  • Panel tidak memiliki induk.

  • Manajer docking tidak mengizinkan panel untuk menyembunyikan secara otomatis.

  • Panel tidak ditampung.

CDockablePane::CanBeAttached

Menentukan apakah panel saat ini dapat ditampung ke panel lain.

virtual BOOL CanBeAttached() const;

Tampilkan Nilai

TRUE jika panel yang dapat ditambatkan dapat ditambatkan ke panel lain atau ke jendela bingkai utama; jika tidak, FALSE.

Keterangan

Secara default, metode ini selalu mengembalikan TRUE. Ambil alih metode ini di kelas turunan untuk mengaktifkan atau menonaktifkan docking tanpa memanggil CBasePane::EnableDocking.

CDockablePane::CDockablePane

Membuat dan menginisialisasi CDockablePane objek.

CDockablePane();

Keterangan

Setelah Anda membuat objek panel yang dapat di-dock, panggil CDockablePane::Create atau CDockablePane::CreateEx untuk membuatnya.

CDockablePane::ConvertToTabbedDocument

Mengonversi satu atau beberapa panel yang dapat ditautkan ke dokumen bertab MDI.

virtual void ConvertToTabbedDocument(BOOL bActiveTabOnly = TRUE);

Parameter

bActiveTabOnly
[di] Saat Anda mengonversi CTabbedPane, tentukan TRUE untuk mengonversi hanya tab aktif. Tentukan FALSE untuk mengonversi semua tab di panel.

CDockablePane::CheckAutoHideCondition

Menentukan apakah panel docking disembunyikan (juga dikenal sebagai mode autohide).

virtual BOOL CheckAutoHideCondition();

Tampilkan Nilai

TRUE jika kondisi sembunyikan terpenuhi; jika tidak, FALSE.

Keterangan

Kerangka kerja menggunakan timer untuk memeriksa secara berkala apakah akan menyembunyikan panel dockable autohide. Metode mengembalikan TRUE saat panel tidak aktif, panel tidak diubah ukurannya, dan penunjuk mouse tidak berada di atas panel.

Jika semua kondisi sebelumnya terpenuhi, kerangka kerja akan memanggil CDockablePane::Slide untuk menyembunyikan panel.

CDockablePane::CheckStopSlideCondition

Menentukan kapan panel docking autohide harus berhenti geser.

virtual BOOL CheckStopSlideCondition(BOOL bDirection);

Parameter

bDirection
[di] TRUE jika panel terlihat; FALSE jika panel disembunyikan.

Tampilkan Nilai

TRUE jika kondisi berhenti terpenuhi; jika tidak, FALSE.

Keterangan

Saat panel yang dapat ditambatkan diatur ke mode autohide, kerangka kerja menggunakan efek geser untuk menampilkan atau menyembunyikan panel. Kerangka kerja memanggil fungsi ini saat panel meluncur. CheckStopSlideConditionTRUE mengembalikan saat panel terlihat sepenuhnya atau saat sepenuhnya tersembunyi.

Ambil alih metode ini dalam kelas turunan untuk mengimplementasikan efek autohide kustom.

CDockablePane::CopyState

Menyalin status panel yang dapat di-dok.

virtual void CopyState(CDockablePane* pOrgBar);

Parameter

pOrgBar
[di] Penunjuk ke panel yang dapat di-dok.

Keterangan

CDockablePane::CopyState menyalin status pOrgBar ke panel saat ini dengan memanggil metode berikut:

CDockablePane::Create

Membuat kontrol Windows dan melampirkannya ke CDockablePane objek.

virtual BOOL Create(
    LPCTSTR lpszCaption,
    CWnd* pParentWnd,
    const RECT& rect,
    BOOL bHasGripper,
    UINT nID,
    DWORD dwStyle,
    DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
    DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
    CCreateContext* pContext = NULL);

virtual BOOL Create(
    LPCTSTR lpszWindowName,
    CWnd* pParentWnd,
    CSize sizeDefault,
    BOOL bHasGripper,
    UINT nID,
    DWORD dwStyle = WS_CHILD|WS_VISIBLE|CBRS_TOP|CBRS_HIDE_INPLACE,
    DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
    DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE);

Parameter

lpszCaption
[di] Menentukan nama jendela.

pParentWnd
[masuk, keluar] Menentukan jendela induk.

rect
[di] Menentukan ukuran dan posisi jendela, dalam koordinat klien .pParentWnd

bHasGripper
[di] TRUE untuk membuat panel dengan keterangan; jika tidak, FALSE.

nID
[di] Menentukan ID jendela anak. Nilai ini harus unik jika Anda ingin menyimpan status docking untuk panel docking ini.

dwStyle
[di] Menentukan atribut gaya jendela.

dwTabbedStyle
[di] Menentukan gaya bertab jendela bertab yang dibuat saat pengguna menyeret panel pada keterangan panel ini.

dwControlBarStyle
[di] Menentukan atribut gaya tambahan.

pContext
[masuk, keluar] Menentukan konteks pembuatan jendela.

lpszWindowName
[di] Menentukan nama jendela.

sizeDefault
[di] Menentukan ukuran jendela.

Tampilkan Nilai

TRUE jika panel yang dapat ditampung berhasil dibuat; jika tidak, FALSE.

Keterangan

Membuat panel Windows dan melampirkannya ke CDockablePane objek.

dwStyle Jika gaya jendela memiliki CBRS_FLOAT_MULTI bendera, jendela miniframe dapat mengambang dengan panel lain di jendela miniframe. Secara default, panel docking hanya dapat mengambang satu per satu.

dwTabbedStyle Jika parameter memiliki AFX_CBRS_OUTLOOK_TABS bendera yang ditentukan, panel membuat panel bertab gaya Outlook saat panel lain dilampirkan ke panel ini menggunakan CDockablePane::AttachToTabWnd metode . Secara default, panel yang dapat ditautkan membuat panel bertab biasa dari jenis CTabbedPane.

CDockablePane::CreateDefaultPaneDivider

Membuat pembagi default untuk panel saat sedang ditambatkan ke jendela bingkai.

static CPaneDivider* __stdcall CreateDefaultPaneDivider(
    DWORD dwAlignment,
    CWnd* pParent,
    CRuntimeClass* pSliderRTC = NULL);

Parameter

dwAlignment
[di] Menentukan sisi bingkai utama tempat panel sedang ditambatkan. Jika dwAlignment berisi CBRS_ALIGN_LEFT bendera atau CBRS_ALIGN_RIGHT , metode ini membuat pembagi vertikal (CPaneDivider::SS_VERT) ; jika tidak, metode ini membuat pembagi horizontal (CPaneDivider::SS_HORZ).

pParent
[di] Penunjuk ke bingkai induk.

pSliderRTC
[in] Tidak digunakan.

Tampilkan Nilai

Metode ini mengembalikan penunjuk ke pembagi yang baru dibuat, atau NULL jika pembuatan pembagi gagal.

Keterangan

dwAlignment bisa menjadi salah satu nilai berikut:

Nilai Deskripsi
CBRS_ALIGN_TOP Panel sedang ditambatkan ke bagian atas area klien jendela bingkai.
CBRS_ALIGN_BOTTOM Panel sedang ditambatkan ke bagian bawah area klien jendela bingkai.
CBRS_ALIGN_LEFT Panel sedang ditambatkan ke sisi kiri area klien dari jendela bingkai.
CBRS_ALIGN_RIGHT Panel sedang ditambatkan ke sisi kanan area klien dari jendela bingkai.

CDockablePane::CreateEx

Membuat kontrol Windows dan melampirkannya ke CDockablePane objek.

virtual BOOL CreateEx(
    DWORD dwStyleEx,
    LPCTSTR lpszCaption,
    CWnd* pParentWnd,
    const RECT& rect,
    BOOL bHasGripper,
    UINT nID,
    DWORD dwStyle,
    DWORD dwTabbedStyle = AFX_CBRS_REGULAR_TABS,
    DWORD dwControlBarStyle = AFX_DEFAULT_DOCKING_PANE_STYLE,
    CCreateContext* pContext = NULL);

Parameter

dwStyleEx
[di] Menentukan atribut gaya yang diperluas untuk jendela baru.

lpszCaption
[di] Menentukan nama jendela.

pParentWnd
[masuk, keluar] Menentukan jendela induk.

rect
[di] Menentukan ukuran dan posisi jendela, dalam koordinat klien .pParentWnd

bHasGripper
[di] TRUE untuk membuat panel dengan keterangan; jika tidak, FALSE.

nID
[di] Menentukan ID jendela anak. Nilai ini harus unik jika Anda ingin menyimpan status docking untuk panel docking ini.

dwStyle
[di] Menentukan atribut gaya jendela.

dwTabbedStyle
[di] Menentukan gaya bertab jendela bertab yang dibuat saat pengguna menyeret panel pada keterangan panel ini.

dwControlBarStyle
[di] Menentukan atribut gaya tambahan.

pContext
[masuk, keluar] Menentukan konteks pembuatan jendela.

Tampilkan Nilai

TRUE jika panel yang dapat ditampung berhasil dibuat; jika tidak, FALSE.

Keterangan

Membuat panel Windows dan melampirkannya ke CDockablePane objek.

dwStyle Jika gaya jendela memiliki CBRS_FLOAT_MULTI bendera, jendela miniframe dapat mengambang dengan panel lain di jendela miniframe. Secara default, panel docking hanya dapat mengambang satu per satu.

dwTabbedStyle Jika parameter memiliki AFX_CBRS_OUTLOOK_TABS bendera yang ditentukan, panel membuat panel bertab gaya Outlook saat panel lain dilampirkan ke panel ini menggunakan CDockablePane::AttachToTabWnd metode . Secara default, panel yang dapat ditautkan membuat panel bertab biasa dari jenis CTabbedPane.

CDockablePane::CreateTabbedPane

Membuat panel bertab dari panel saat ini.

virtual CTabbedPane* CreateTabbedPane();

Tampilkan Nilai

Panel bertab baru, atau NULL jika operasi buat gagal.

Keterangan

Kerangka kerja memanggil metode ini saat membuat panel bertab untuk mengganti panel ini. Untuk informasi selengkapnya, lihat CDockablePane::AttachToTabWnd .

Ambil alih metode ini di kelas turunan untuk menyesuaikan cara panel bertab dibuat dan diinisialisasi.

Panel bertab dibuat sesuai dengan informasi kelas runtime yang disimpan dalam anggota, yang diinisialisasi m_pTabbedControlBarRTC oleh CDockablePane::CreateEx metode .

CDockablePane::DockPaneContainer

Menambungkan kontainer ke panel.

virtual BOOL DockPaneContainer(
    CPaneContainerManager& barContainerManager,
    DWORD dwAlignment,
    AFX_DOCK_METHOD dockMethod);

Parameter

barContainerManager
[di] Referensi ke manajer kontainer kontainer yang sedang ditampar.

dwAlignment
[di] DWORD yang menentukan sisi panel tempat kontainer sedang ditampar.

dockMethod
[in] Tidak digunakan.

Tampilkan Nilai

TRUE jika kontainer berhasil ditampung ke panel; jika tidak, FALSE.

Keterangan

dwAlignment bisa menjadi salah satu nilai berikut:

Nilai Deskripsi
CBRS_ALIGN_TOP Kontainer sedang ditautkan ke bagian atas panel.
CBRS_ALIGN_BOTTOM Kontainer sedang ditampar ke bagian bawah panel.
CBRS_ALIGN_LEFT Kontainer sedang ditampung di sebelah kiri panel.
CBRS_ALIGN_RIGHT Kontainer sedang ditampar di sebelah kanan panel.

CDockablePane::DockPaneStandard

Menambah panel dengan menggunakan dok kerangka (standar).

virtual CPane* DockPaneStandard(BOOL& bWasDocked);

Parameter

bWasDocked
[di] Ketika metode kembali, nilai ini berisi TRUE jika panel berhasil di-dock; jika tidak, itu berisi FALSE.

Tampilkan Nilai

Jika panel ditautkan ke jendela bertab, atau jika jendela bertab dibuat sebagai akibat dari penambatan, metode ini mengembalikan penunjuk ke jendela bertab. Jika panel berhasil di-dock, metode ini mengembalikan penunjuk this . Jika docking gagal, metode ini mengembalikan NULL.

CDockablePane::DockToRecentPos

Menambatkan panel ke posisi docking yang disimpan.

BOOL CDockablePane::DockToRecentPos();

Tampilkan Nilai

TRUE jika panel berhasil di-dock; jika tidak, FALSE.

Keterangan

Panel yang dapat di-dok menyimpan informasi docking terbaru dalam CRecentDockSiteInfo objek.

CDockablePane::DockToWindow

Menamamkan satu panel dock ke panel docking lain.

virtual BOOL DockToWindow(
    CDockablePane* pTargetWindow,
    DWORD dwAlignment,
    LPCRECT lpRect = NULL);

Parameter

pTargetWindow
[masuk, keluar] Menentukan panel yang dapat ditampung untuk menambungkan panel ini.

dwAlignment
[di] Menentukan perataan docking untuk panel. Mungkin salah satu dari CBRS_ALIGN_LEFT, CBRS_ALIGN_TOP, CBRS_ALIGN_RIGHT, CBRS_ALIGN_BOTTOM atau CBRS_ALIGN_ANY. (Ditentukan dalam afxres.h.)

lpRect
[di] Menentukan persegi panjang docking untuk panel.

Tampilkan Nilai

TRUE jika panel berhasil di-dock; jika tidak, FALSE.

Keterangan

Panggil metode ini untuk menambatkan satu panel ke panel lain dengan perataan yang ditentukan oleh dwAlignment.

CDockablePane::DrawCaption

Menggambar keterangan (juga disebut gripper) dari panel docking.

virtual void DrawCaption(
    CDC* pDC,
    CRect rectCaption);

Parameter

pDC
[di] Mewakili konteks perangkat yang digunakan untuk menggambar.

rectCaption
[di] Menentukan persegi panjang batas keterangan panel.

Keterangan

Kerangka kerja memanggil metode ini untuk menggambar keterangan panel yang dapat ditambat.

Ambil alih metode ini di kelas turunan untuk menyesuaikan tampilan keterangan.

CDockablePane::EnableAutohideAll

Mengaktifkan atau menonaktifkan mode autohide untuk panel ini dan untuk panel lain dalam kontainer.

void EnableAutohideAll(BOOL bEnable = TRUE);

Parameter

bEnable
[di] TRUE untuk mengaktifkan fitur autohide semua untuk panel dockable; jika tidak, FALSE.

Keterangan

Saat pengguna memegang kunci Ctrl dan mengklik tombol sematkan untuk mengalihkan panel ke mode autohide, semua panel lain dalam kontainer yang sama juga dialihkan ke mode autohide.

Panggil metode ini dengan bEnable diatur ke FALSE untuk menonaktifkan fitur ini untuk panel tertentu.

CDockablePane::EnableGripper

Menampilkan atau menyembunyikan keterangan (juga disebut gripper).

virtual void EnableGripper(BOOL bEnable);

Parameter

bEnable
[di] TRUE untuk mengaktifkan keterangan; jika tidak, FALSE.

Keterangan

Saat kerangka kerja membuat panel yang dapat ditambat, mereka tidak memiliki WS_STYLE gaya jendela, bahkan jika ditentukan. Ini berarti bahwa keterangan panel adalah area non-klien yang dikontrol oleh kerangka kerja, tetapi area ini berbeda dari keterangan jendela standar.

Anda dapat menampilkan atau menyembunyikan keterangan kapan saja. Kerangka kerja menyembunyikan keterangan saat panel ditambahkan sebagai tab ke jendela bertab atau saat panel diambang di jendela miniframe.

CDockablePane::GetAHRestoredRect

Menentukan posisi panel saat dalam mode sembunyikan otomatis.

CRect GetAHRestoredRect() const;

Tampilkan Nilai

Objek CRect yang berisi posisi panel saat berada dalam mode sembunyikan otomatis.

Keterangan

CDockablePane::GetAHSlideMode

Mengambil mode sembunyikan slide otomatis untuk panel.

virtual UINT GetAHSlideMode() const;

Tampilkan Nilai

UINT Yang menentukan mode sembunyikan slide otomatis untuk panel. Nilai yang dikembalikan dapat berupa AFX_AHSM_MOVE atau AFX_AHSM_STRETCH, tetapi implementasinya hanya menggunakan AFX_AHSM_MOVE.

Keterangan

CDockablePane::GetCaptionHeight

Mengembalikan tinggi, dalam piksel, dari keterangan saat ini.

virtual int GetCaptionHeight() const;

Tampilkan Nilai

Tinggi keterangan, dalam piksel.

Keterangan

Tinggi keterangan adalah 0 jika keterangan disembunyikan oleh CDockablePane::EnableGripper metode , atau jika panel tidak memiliki keterangan.

CDockablePane::GetDefaultPaneDivider

Mengembalikan pembagi panel default untuk kontainer panel.

CPaneDivider* GetDefaultPaneDivider() const;

Tampilkan Nilai

Objek yang valid CPaneDivider jika panel yang dapat ditambatkan ditambatkan ke jendela bingkai utama, atau NULL jika panel yang dapat ditambatkan tidak ditambatkan atau jika mengambang.

Keterangan

Untuk informasi selengkapnya tentang pembagi panel, lihat CPaneDivider Kelas.

CDockablePane::GetDockingStatus

Menentukan kemampuan panel untuk di-dock berdasarkan lokasi penunjuk yang disediakan.

virtual AFX_CS_STATUS GetDockingStatus(
    CPoint pt,
    int nSensitivity);

Parameter

pt
[di] Lokasi pointer dalam koordinat layar.

nSensitivity
[di] Jarak, dalam piksel, jauh dari tepi persegi panjang penunjuk harus mengaktifkan docking.

Tampilkan Nilai

Salah satu nilai status berikut:

AFX_CS_STATUS nilai Makna
CS_NOTHING Penunjuk tidak melalui situs dok. Kerangka kerja tidak menambungkan panel.
CS_DOCK_IMMEDIATELY Penunjuk terletak di atas situs dock dalam mode langsung (panel menggunakan DT_IMMEDIATE mode docking). Kerangka kerja segera menambah panel.
CS_DELAY_DOCK Penunjuk berada di atas situs dock yang merupakan panel docking lain atau merupakan tepi bingkai utama. Kerangka kerja menambatkan panel setelah penundaan. Lihat bagian Keterangan untuk informasi selengkapnya tentang penundaan ini.
CS_DELAY_DOCK_TO_TAB Penunjuk terletak di atas situs dok yang menyebabkan panel ditautkan di jendela bertab. Ini terjadi ketika penunjuk terletak di atas keterangan panel docking lain atau di atas area tab panel bertab.

Keterangan

Kerangka kerja memanggil metode ini untuk menangani dock panel mengambang.

Untuk bilah alat mengambang atau panel docking yang menggunakan DT_IMMEDIATE mode docking, kerangka kerja menunda perintah dock untuk memungkinkan pengguna memindahkan jendela keluar dari area klien bingkai induk sebelum docking terjadi. Panjang penundaan diukur dalam milidetik dan dikendalikan oleh CDockingManager::m_nTimeOutBeforeToolBarDock anggota data. Nilai default adalah CDockingManager::m_nTimeOutBeforeToolBarDock 200. Perilaku ini menimulasi perilaku docking Microsoft Word 2007.

Untuk status docking tertunda (CS_DELAY_DOCK dan CS_DELAY_DOCK_TO_TAB), kerangka kerja tidak melakukan docking hingga pengguna merilis tombol mouse. Jika panel menggunakan DT_STANDARD mode docking, kerangka kerja menampilkan persegi panjang di lokasi docking yang diproyeksikan. Jika panel menggunakan DT_SMART mode docking, kerangka kerja menampilkan penanda docking cerdas dan persegi panjang semi transparan di lokasi docking yang diproyeksikan. Untuk menentukan mode docking untuk panel Anda, panggil CBasePane::SetDockingMode metode . Untuk informasi selengkapnya tentang docking pintar, lihat CDockingManager::GetSmartDockingParams.

CDockablePane::GetDragSensitivity

Mengembalikan sensitivitas seret panel docking.

static const CSize& GetDragSensitivity();

Tampilkan Nilai

Objek CSize yang berisi lebar dan tinggi, dalam piksel, persegi panjang yang berpusat pada titik seret. Operasi seret tidak dimulai sampai penunjuk mouse bergerak di luar persegi panjang ini.

CDockablePane::GetLastPercentInPaneContainer

Mengambil persentase ruang yang diduduki panel dalam kontainernya ( CPaneContainer Kelas).

int GetLastPercentInPaneContainer() const;

Tampilkan Nilai

Yang int menentukan persentase ruang yang diduduki panel dalam kontainernya.

Keterangan

Metode ini digunakan ketika kontainer menyesuaikan tata letaknya.

CDockablePane::GetTabArea

Mengambil area tab untuk panel.

virtual void GetTabArea(
    CRect& rectTabAreaTop,
    CRect& rectTabAreaBottom) const;

Parameter

rectTabAreaTop
[di] GetTabArea mengisi variabel ini dengan area tab jika tab terletak di bagian atas panel. Jika tab terletak di bagian bawah panel, variabel ini diisi dengan persegi panjang kosong.

rectTabAreaBottom
[di] GetTabArea mengisi variabel ini dengan area tab jika tab terletak di bagian bawah panel. Jika tab terletak di bagian atas panel, variabel ini diisi dengan persegi panjang kosong.

Keterangan

Metode ini hanya digunakan di kelas yang berasal dari CDockablePane dan memiliki tab. Untuk informasi lebih lanjut, lihat CTabbedPane::GetTabArea dan CMFCOutlookBar::GetTabArea.

CDockablePane::GetTabbedPaneRTC

Mengembalikan informasi kelas runtime tentang jendela bertab yang dibuat saat panel lain menambah ke panel saat ini.

CRuntimeClass* GetTabbedPaneRTC() const;

Tampilkan Nilai

Informasi kelas runtime untuk panel yang dapat ditambat.

Keterangan

Panggil metode ini untuk mengambil informasi kelas runtime untuk panel bertab yang dibuat secara dinamis. Ini dapat terjadi ketika pengguna menyeret satu panel ke keterangan panel lain, atau jika Anda memanggil CDockablePane::AttachToTabWnd metode untuk membuat panel bertab secara terprogram dari dua panel yang dapat ditautkan.

Anda dapat mengatur informasi kelas runtime dengan memanggil CDockablePane::SetTabbedPaneRTC metode .

CDockablePane::HasAutoHideMode

Menentukan apakah panel docking dapat dialihkan ke mode autohide.

virtual BOOL HasAutoHideMode() const;

Tampilkan Nilai

TRUE jika panel yang dapat ditambatkan dapat dialihkan ke mode autohide; jika tidak, FALSE.

Keterangan

Ambil alih metode ini dalam kelas turunan untuk menonaktifkan mode autohide untuk panel dockable tertentu.

CDockablePane::HitTest

Menentukan lokasi di panel tempat pengguna mengklik mouse.

virtual int HitTest(
    CPoint point,
    BOOL bDetectCaption = FALSE);

Parameter

point
[di] Menentukan titik untuk diuji.

bDetectCaption
[di] TRUE jika HTCAPTION harus dikembalikan jika titik berada di keterangan panel; jika tidak, FALSE.

Tampilkan Nilai

Salah satu dari nilai berikut:

  • HTNOWHERE jika point tidak ada di panel yang dapat di-dock.

  • HTCLIENT jika point berada di area klien panel yang dapat di-dock.

  • HTCAPTION jika point berada di area keterangan panel yang dapat di-dock.

  • AFX_HTCLOSE jika point ada di tombol tutup.

  • HTMAXBUTTON jika point ada di tombol sematkan.

CDockablePane::IsAutohideAllEnabled

Menunjukkan apakah panel docking dan semua panel lain dalam kontainer dapat dialihkan ke mode autohide.

virtual BOOL IsAutohideAllEnabled() const;

Tampilkan Nilai

TRUE jika panel yang dapat ditambatkan, dan semua panel lain dalam kontainer, dapat dialihkan ke mode autohide; jika tidak, FALSE.

Keterangan

Pengguna mengaktifkan mode autohide dengan mengklik tombol sematkan docking sambil menahan tombol Ctrl

Untuk mengaktifkan atau menonaktifkan perilaku ini, panggil CDockablePane::EnableAutohideAll metode .

CDockablePane::IsAutoHideMode

Menentukan apakah panel dalam mode autohide.

virtual BOOL IsAutoHideMode() const;

Tampilkan Nilai

TRUE jika panel yang dapat ditambat berada dalam mode autohide; jika tidak, FALSE.

CDockablePane::IsDocked

Menentukan apakah panel saat ini ditampung.

virtual BOOL IsDocked() const;

Tampilkan Nilai

TRUE jika panel yang dapat ditampung bukan milik jendela miniframe atau jika mengambang di jendela miniframe dengan panel lain. FALSE jika panel adalah anak dari jendela miniframe dan tidak ada panel lain yang termasuk dalam jendela miniframe.

Keterangan

Untuk menentukan apakah panel ditambatkan ke jendela bingkai utama, panggil CDockablePane::GetDefaultPaneDivider. Jika metode mengembalikan non-pointerNULL , panel ditambatkan di jendela bingkai utama.

CDockablePane::IsHideInAutoHideMode

Menentukan perilaku panel yang berada dalam mode autohide jika ditampilkan (atau disembunyikan) dengan memanggil CDockablePane::ShowPane.

virtual BOOL IsHideInAutoHideMode() const;

Tampilkan Nilai

TRUE jika panel yang dapat ditambat harus disembunyikan saat dalam mode autohide; jika tidak, FALSE.

Keterangan

Saat panel yang dapat ditambat berada dalam mode autohide, panel tersebut bersifat berbeda saat Anda memanggil ShowPane untuk menyembunyikan atau menampilkan panel. Perilaku ini dikendalikan oleh anggota CDockablePane::m_bHideInAutoHideModestatis . Jika anggota ini adalah TRUE, panel yang dapat ditambat dan toolbar autohide terkait atau tombol autohide disembunyikan atau ditampilkan saat Anda memanggil ShowPane. Jika tidak, panel yang dapat ditambatkan diaktifkan atau dinonaktifkan, dan toolbar autohide atau tombol autohide terkait selalu terlihat.

Ambil alih metode ini di kelas turunan untuk mengubah perilaku default untuk masing-masing panel.

Nilai defaultnya untuk m_bHideInAutoHideMode adalah FALSE.

CDockablePane::IsInFloatingMultiPaneFrameWnd

Menentukan apakah panel berada di jendela bingkai multi-panel ( CMultiPaneFrameWnd Class).

virtual BOOL IsInFloatingMultiPaneFrameWnd() const;

Tampilkan Nilai

TRUE jika panel berada di jendela bingkai multi-panel; jika tidak, FALSE.

Keterangan

CDockablePane::IsResizable

Menentukan apakah panel dapat diubah bentuknya.

virtual BOOL IsResizable() const;

Tampilkan Nilai

TRUE jika panel dapat diubah ukurannya; jika tidak, FALSE.

Keterangan

Secara default, panel yang dapat di-dok dapat diubah ukurannya. Untuk mencegah perubahan ukuran, ambil alih metode ini di kelas turunan dan kembalikan FALSE. Perhatikan bahwa FALSE nilai mengarah ke gagal ASSERT di CPane::DockPane. Gunakan CDockingManager::AddPane sebagai gantinya untuk menambungkan panel dalam bingkai induk.

Panel yang tidak dapat diubah ukurannya tidak dapat mengambang atau memasuki mode sembunyikan otomatis dan selalu terletak di tepi luar bingkai induk.

CDockablePane::IsTabLocationBottom

Menentukan apakah tab terletak di bagian atas atau bawah panel.

virtual BOOL IsTabLocationBottom() const;

Tampilkan Nilai

TRUE jika tab terletak di bagian bawah panel; FALSE jika tab terletak di bagian atas panel.

Keterangan

Untuk informasi selengkapnya, lihat CTabbedPane::IsTabLocationBottom .

CDockablePane::IsTracked

Menentukan apakah panel sedang dipindahkan oleh pengguna.

BOOL IsTracked() const;

Tampilkan Nilai

TRUE jika panel sedang dipindahkan; jika tidak, FALSE.

CDockablePane::IsVisible

Menentukan apakah panel saat ini terlihat.

virtual BOOL IsVisible() const;

Tampilkan Nilai

TRUE jika panel yang dapat ditampung terlihat; jika tidak, FALSE.

Keterangan

Panggil metode ini untuk menentukan apakah panel yang dapat di-dock terlihat. Anda dapat menggunakan metode ini alih-alih memanggil CWnd::IsWindowVisible atau menguji gaya WS_VISIBLE . Status visibilitas yang dikembalikan tergantung pada apakah mode autohide diaktifkan atau dinonaktifkan dan pada nilai CDockablePane::IsHideInAutoHideMode properti.

Jika panel yang dapat ditambat berada dalam mode autohide dan IsHideInAutoHideMode mengembalikan FALSE status visibilitas selalu FALSE.

Jika panel yang dapat ditambat berada dalam mode autohide dan IsHideInAutoHideMode mengembalikan TRUE status visibilitas bergantung pada status visibilitas toolbar autohide terkait.

Jika panel yang dapat ditambatkan tidak dalam mode autohide, status visibilitas ditentukan oleh CBasePane::IsVisible metode .

## CDockablePane::LoadState

Hanya untuk penggunaan internal. Untuk detail selengkapnya, lihat kode sumber yang mfc terletak di folder penginstalan Visual Studio Anda. Misalnya, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc.

virtual BOOL LoadState(
   LPCTSTR lpszProfileName = NULL,
   int nIndex = -1,
   UINT uiID = (UINT) -1
);

CDockablePane::m_bDisableAnimation

Menentukan apakah animasi autohide panel yang dapat di-dock dinonaktifkan.

AFX_IMPORT_DATA static BOOL m_bDisableAnimation;

CDockablePane::m_bHideInAutoHideMode

Menentukan perilaku panel saat panel berada dalam mode autohide.

AFX_IMPORT_DATA static BOOL m_bHideInAutoHideMode;

Keterangan

Nilai ini memengaruhi semua panel docking dalam aplikasi.

Jika Anda mengatur anggota ini ke TRUE, panel yang dapat ditambat disembunyikan atau ditampilkan dengan toolbar dan tombol autohide terkait saat Anda memanggil CDockablePane::ShowPane.

Jika Anda mengatur anggota ini ke FALSE, panel yang dapat di-dock diaktifkan atau dinonaktifkan saat Anda memanggil CDockablePane::ShowPane.

CDockablePane::m_nSlideSteps

Menentukan kecepatan animasi panel saat berada dalam mode autohide.

AFX_IMPORT_DATA static int m_nSlideSteps;

Keterangan

Untuk efek animasi yang lebih cepat, kurangi nilai ini. Untuk efek animasi yang lebih lambat, tingkatkan nilai ini.

CDockablePane::OnAfterChangeParent

Untuk detail selengkapnya, lihat kode sumber yang mfc terletak di folder penginstalan Visual Studio Anda. Misalnya, %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\atlmfc\src\mfc.

virtual void OnAfterChangeParent(CWnd* pWndOldParent);

Parameter

[in] pWndOldParent\

Keterangan

CDockablePane::OnAfterDockFromMiniFrame

Dipanggil oleh kerangka kerja ketika bilah dok mengambang berlabuh di jendela bingkai.

virtual void OnAfterDockFromMiniFrame();

Keterangan

Secara default, metode ini tidak melakukan apa pun.

CDockablePane::OnBeforeChangeParent

Kerangka kerja memanggil metode ini sebelum mengubah induk panel.

virtual void OnBeforeChangeParent(
    CWnd* pWndNewParent,
    BOOL bDelay = FALSE);

Parameter

pWndNewParent
[di] Penunjuk ke jendela induk baru.

bDelay
[di] BOOL yang menentukan apakah akan menunda perhitungan ulang tata letak docking jika panel dilepas. Untuk informasi selengkapnya, lihat CDockablePane::UndockPane .

Keterangan

Jika panel ditampung dan induk baru tidak memperbolehkan docking, metode ini akan melepas tautkan panel.

Jika panel sedang dikonversi ke dokumen bertab, metode ini menyimpan posisi docking terbarunya. Kerangka kerja menggunakan posisi docking terbaru untuk memulihkan posisi panel saat dikonversi kembali ke status ditambatkan.

CDockablePane::OnBeforeFloat

Kerangka kerja memanggil metode ini sebelum panel beralih ke status 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. Lihat CPane::DockPane untuk daftar nilai yang mungkin.

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 mengambang.

CDockablePane::OnPressButtons

Dipanggil saat pengguna menekan tombol keterangan selain tombol AFX_HTCLOSE dan AFX_HTMAXBUTTON .

virtual void OnPressButtons(UINT nHit);

Parameter

nHit
[di] Parameter ini tidak digunakan.

Keterangan

Jika Anda menambahkan tombol kustom ke keterangan panel yang dapat ditambatkan, ambil alih metode ini untuk menerima pemberitahuan saat pengguna menekan tombol .

CDockablePane::OnSlide

Dipanggil oleh kerangka kerja untuk menganimasikan panel saat berada dalam mode autohide.

virtual void OnSlide(BOOL bSlideOut);

Parameter

bSlideOut
[di] TRUE untuk memperlihatkan panel; FALSE untuk menyembunyikan panel.

Keterangan

Ambil alih metode ini dalam kelas turunan untuk mengimplementasikan efek autohide kustom.

CDockablePane::RemoveFromDefaultPaneDividier

Kerangka kerja memanggil metode ini saat panel dilepas.

void RemoveFromDefaultPaneDividier();

Keterangan

Metode ini mengatur pembagi panel default ke NULL dan menghapus panel dari kontainernya.

CDockablePane::ReplacePane

Mengganti panel dengan panel tertentu.

BOOL ReplacePane(
    CDockablePane* pBarToReplaceWith,
    AFX_DOCK_METHOD dockMethod,
    BOOL bRegisterWithFrame = FALSE);

Parameter

pBarToReplaceWith
[di] Penunjuk ke panel yang dapat di-dok.

dockMethod
[in] Tidak digunakan.

bRegisterWithFrame
[di] Jika TRUE, panel baru terdaftar dengan manajer docking induk panel lama. Panel baru disisipkan di indeks panel lama dalam daftar panel yang dikelola oleh manajer docking.

Tampilkan Nilai

TRUE jika penggantian berhasil; jika tidak, FALSE.

CDockablePane::RestoreDefaultPaneDivider

Saat panel dideserialisasi, kerangka kerja memanggil metode ini untuk memulihkan pembagi panel default.

void RestoreDefaultPaneDivider();

Keterangan

Pembagi panel default yang dipulihkan menggantikan pembagi panel default saat ini, jika ada.

CDockablePane::SetAutoHideMode

Beralih ke panel docking antara mode terlihat dan muncul otomatis.

virtual CMFCAutoHideBar* SetAutoHideMode(
    BOOL bMode,
    DWORD dwAlignment,
    CMFCAutoHideBar* pCurrAutoHideBar = NULL,
    BOOL bUseTimer = TRUE);

Parameter

bMode
[di] TRUE untuk mengaktifkan mode autohide; FALSE untuk mengaktifkan mode docking reguler.

dwAlignment
[di] Menentukan perataan panel autohide untuk dibuat.

pCurrAutoHideBar
[masuk, keluar] Penunjuk ke toolbar autohide saat ini. Bisa jadi NULL.

bUseTimer
[di] Menentukan apakah akan menggunakan efek autohide saat pengguna mengalihkan panel ke mode autohide atau untuk segera menyembunyikan panel.

Tampilkan Nilai

Toolbar autohide yang dibuat sebagai akibat dari beralih ke mode autohide, atau NULL.

Keterangan

Kerangka kerja memanggil metode ini ketika pengguna mengklik tombol sematkan untuk mengalihkan panel yang dapat ditambatkan ke mode autohide atau ke mode docking biasa.

Panggil metode ini untuk mengalihkan panel yang dapat di-dok ke mode autohide secara terprogram. Panel harus ditambatkan ke jendela bingkai utama ( CDockablePane::GetDefaultPaneDivider harus mengembalikan penunjuk yang valid ke CPaneDivider).

CDockablePane::SetAutoHideParents

Mengatur tombol sembunyikan otomatis dan sembunyikan bilah alat otomatis untuk panel.

void SetAutoHideParents(
    CMFCAutoHideBar* pToolBar,
    CMFCAutoHideButton* pBtn);

Parameter

pToolBar
[di] Penunjuk ke bilah alat sembunyikan otomatis.

pBtn
[di] Penunjuk ke tombol sembunyikan otomatis.

CDockablePane::SetLastPercentInPaneContainer

Mengatur persentase ruang yang diduduki panel dalam kontainernya.

void SetLastPercentInPaneContainer(int n);

Parameter

n
[di] Yang int menentukan persentase ruang yang diduduki panel dalam kontainernya.

Keterangan

Kerangka kerja menyesuaikan panel untuk menggunakan nilai baru saat tata letak dihitung ulang.

CDockablePane::SetRestoredDefaultPaneDivider

Mengatur pembagi panel default yang dipulihkan.

void SetRestoredDefaultPaneDivider(HWND hRestoredSlider);

Parameter

hRestoredSlider
[di] Handel ke pembagi panel (penggelis).

Keterangan

Pembagi panel default yang dipulihkan diperoleh saat panel dideserialisasi. Untuk informasi selengkapnya, lihat CDockablePane::RestoreDefaultPaneDivider .

CDockablePane::SetTabbedPaneRTC

Mengatur informasi kelas runtime untuk jendela bertab yang dibuat saat dua panel ditambatkan bersama-sama.

void SetTabbedPaneRTC(CRuntimeClass* pRTC);

Parameter

pRTC
[di] Informasi kelas runtime untuk panel bertab.

Keterangan

Panggil metode ini untuk mengatur informasi kelas runtime untuk panel bertab yang dibuat secara dinamis. Ini dapat terjadi ketika pengguna menyeret satu panel ke keterangan panel lain, atau jika Anda memanggil CDockablePane::AttachToTabWnd metode untuk membuat panel bertab secara terprogram dari dua panel yang dapat ditautkan.

Kelas runtime default diatur sesuai dengan dwTabbedStyle parameter CDockablePane::Create dan CDockablePane::CreateEx. Untuk mengkustomisasi panel bertab baru, dapatkan kelas Anda dari salah satu kelas berikut:

Kemudian, panggil metode ini dengan pointer ke informasi kelas runtime-nya.

CDockablePane::ShowPane

Memperlihatkan atau menyembunyikan panel.

virtual void ShowPane(
    BOOL bShow,
    BOOL bDelay,
    BOOL bActivate);

Parameter

bShow
[di] TRUE untuk memperlihatkan panel; FALSE untuk menyembunyikan panel.

bDelay
[di] TRUE untuk menunda penyesuaian tata letak docking; FALSE untuk segera menyesuaikan tata letak docking.

bActivate
[di] TRUE untuk mengaktifkan panel saat ditampilkan; jika tidak, FALSE.

Keterangan

Panggil metode ini alih-alih CWnd::ShowWindow saat menampilkan atau menyembunyikan panel yang dapat ditampung.

CDockablePane::Slide

Menganimasikan panel yang berada dalam mode autohide.

virtual void Slide(
    BOOL bSlideOut,
    BOOL bUseTimer = TRUE);

Parameter

bSlideOut
[di] TRUE untuk memperlihatkan panel; FALSE untuk menyembunyikan panel.

bUseTimer
[di] TRUE untuk memperlihatkan atau menyembunyikan panel dengan efek autohide; FALSE untuk segera memperlihatkan atau menyembunyikan panel.

Keterangan

Kerangka kerja memanggil metode ini untuk menganimasikan panel yang berada dalam mode autohide.

Metode ini menggunakan CDockablePane::m_nSlideDefaultTimeOut nilai untuk menentukan waktu habis untuk efek slide. Nilai default untuk waktu habis adalah 1. Jika Anda menyesuaikan algoritma autohide, ubah anggota ini untuk mengubah waktu habis.

CDockablePane::ToggleAutoHide

Mengalihkan panel antara mode selalu terlihat dan sembunyikan otomatis.

virtual void ToggleAutoHide();

Keterangan

Metode ini mengalihkan mode sembunyikan otomatis untuk panel dengan memanggil CDockablePane::SetAutoHideMode.

CDockablePane::UndockPane

Batalkan penambahan panel dari jendela bingkai utama atau kontainer jendela miniframe.

virtual void UndockPane(BOOL bDelay = FALSE);

Parameter

bDelay
[di] TRUE untuk menunda pengkalkulasian tata letak docking; FALSE untuk segera menghitung ulang tata letak docking.

Keterangan

Panggil metode ini untuk membatalkan penambahan panel dari jendela bingkai utama atau dari kontainer jendela multi-miniframe (panel yang mengambang dalam satu jendela miniframe dengan panel lain).

Anda harus melepas tautkan panel sebelum melakukan operasi eksternal apa pun yang tidak dilakukan oleh CDockingManager. Misalnya, Anda harus membatalkan dock panel untuk memindahkannya secara terprogram dari satu lokasi ke lokasi lain.

Kerangka kerja secara otomatis membatalkan penambahan panel sebelum dihancurkan.

Baca juga

Bagan Hierarki
Kelas
CPane Kelas