Bagikan melalui


Kelas CMFCPopupMenu

Menerapkan fungsionalitas menu pop-up Windows dan memperluasnya dengan menambahkan fitur seperti menu robek dan tipsalat. Untuk detail selengkapnya, lihat kode sumber yang terletak di folder VC\atlmfc\src\mfc dari penginstalan Visual Studio Anda.

Sintaks

class CMFCPopupMenu : public CMiniFrameWnd

Anggota

Konstruktor yang Dilindungi

Nama Deskripsi
CMFCPopupMenu::CMFCPopupMenu Membuat CMFCPopupMenu objek.

Metode Publik

Nama Deskripsi
CMFCPopupMenu::ActivatePopupMenu
CMFCPopupMenu::AlwaysShowEmptyToolsEntry Mengatur apakah menu pop-up diaktifkan untuk menampilkan entri kosong untuk alat yang ditentukan pengguna.
CMFCPopupMenu::AreAllCommandsShown
CMFCPopupMenu::CheckArea Menentukan lokasi titik relatif terhadap menu pop-up.
CMFCPopupMenu::CloseMenu
CMFCPopupMenu::Create Membuat menu pop-up dan melampirkannya ke CMFCPopupMenu objek.
CMFCPopupMenu::D efaultMouseClickOnClose
CMFCPopupMenu::EnableMenuLogo Menginisialisasi logo untuk menu pop-up.
CMFCPopupMenu::EnableMenuSound Mengaktifkan suara menu.
CMFCPopupMenu::EnableResize
CMFCPopupMenu::EnableScrolling
CMFCPopupMenu::EnableVertResize
CMFCPopupMenu::FindSubItemByCommand
CMFCPopupMenu::GetActiveMenu Mengembalikan menu yang saat ini aktif.
CMFCPopupMenu::GetAnimationSpeed Mengembalikan kecepatan animasi untuk menu pop-up.
CMFCPopupMenu::GetAnimationType Mengembalikan tipe animasi menu pop-up saat ini.
CMFCPopupMenu::GetDropDirection
CMFCPopupMenu::GetForceMenuFocus Menunjukkan apakah fokus dikembalikan ke bilah menu saat menu pop-up ditampilkan.
CMFCPopupMenu::GetForceShadow
CMFCPopupMenu::GetHMenu Mengembalikan handel ke sumber daya menu terlampir.
CMFCPopupMenu::GetMenuBar Mengembalikan CMFCPopupMenuBar yang disematkan di dalam menu pop-up.
CMFCPopupMenu::GetMenuItem Mengembalikan penunjuk ke item menu pada indeks yang ditentukan.
CMFCPopupMenu::GetMenuItemCount Mengembalikan jumlah item dalam menu popup.
CMFCPopupMenu::GetMessageWnd Mengembalikan penunjuk ke jendela tempat kerangka kerja merutekan pesan menu pop-up.
CMFCPopupMenu::GetParentArea
CMFCPopupMenu::GetParentButton Mengembalikan penunjuk ke tombol toolbar induk.
CMFCPopupMenu::GetParentPopupMenu Mengembalikan penunjuk ke menu pop-up induk.
CMFCPopupMenu::GetParentRibbonElement
CMFCPopupMenu::GetParentToolBar Mengembalikan penunjuk ke toolbar induk.
CMFCPopupMenu::GetQuickCustomizeType
CMFCPopupMenu::GetSelItem Mengembalikan penunjuk ke perintah menu yang saat ini dipilih.
CMFCPopupMenu::HasBeenResized
CMFCPopupMenu::HideRarelyUsedCommands Menunjukkan apakah menu pop-up dapat menyembunyikan perintah yang jarang digunakan.
CMFCPopupMenu::InCommand
CMFCPopupMenu::InsertItem Sisipkan item baru ke menu pop-up pada lokasi yang ditentukan.
CMFCPopupMenu::InsertSeparator Menyisipkan pemisah ke dalam menu pop-up di lokasi yang ditentukan.
CMFCPopupMenu::IsAlwaysClose
CMFCPopupMenu::IsAlwaysShowEmptyToolsEntry
CMFCPopupMenu::IsCustomizePane Menunjukkan apakah menu pop-up berfungsi sebagai QuickCustomizePane.
CMFCPopupMenu::IsEscClose
CMFCPopupMenu::IsIdle Menunjukkan apakah menu pop-up saat ini menganggur.
CMFCPopupMenu::IsMenuSound
CMFCPopupMenu::IsQuickCustomize Menentukan apakah Kelas CMFCToolBarMenuButton terkait berada dalam mode QuickCustomize.
CMFCPopupMenu::IsResizeble
CMFCPopupMenu::IsRightAlign Menunjukkan apakah menu rata kanan atau rata kiri.
CMFCPopupMenu::IsScrollable
CMFCPopupMenu::IsSendMenuSelectMsg Menunjukkan apakah kerangka kerja memberi tahu bingkai induk saat pengguna memilih perintah dari menu pop-up.
CMFCPopupMenu::IsShown Menunjukkan apakah menu pop-up saat ini terlihat.
CMFCPopupMenu::MoveTo
CMFCPopupMenu::OnCmdMsg (Mengambil alih CFrameWnd::OnCmdMsg.)
CMFCPopupMenu::P ostCommand
CMFCPopupMenu::P reTranslateMessage (Mengambil alih CFrameWnd::PreTranslateMessage.)
CMFCPopupMenu::RecalcLayout Dipanggil oleh kerangka kerja ketika bilah kontrol standar diaktifkan atau dimatikan atau saat jendela bingkai diubah ukurannya. (Penimpaan CFrameWnd::RecalcLayout.)
CMFCPopupMenu::RemoveAllItems Menghapus semua item dari menu pop-up.
CMFCPopupMenu::RemoveItem Menghapus item yang ditentukan dari menu pop-up.
CMFCPopupMenu::SaveState
CMFCPopupMenu::SetAnimationSpeed Mengatur kecepatan animasi untuk menu pop-up.
CMFCPopupMenu::SetAnimationType Menyetel tipe animasi untuk menu pop-up.
CMFCPopupMenu::SetAutoDestroy
CMFCPopupMenu::SetDefaultItem Mengatur perintah default untuk menu pop-up.
CMFCPopupMenu::SetForceMenuFocus Memaksa fokus input untuk kembali ke bilah menu saat menu pop-up ditampilkan.
CMFCPopupMenu::SetForceShadow Memaksa kerangka kerja untuk menggambar bayangan menu saat menu pop-up muncul di luar bingkai utama.
CMFCPopupMenu::SetMaxWidth Atur lebar maksimum untuk menu pop-up.
CMFCPopupMenu::SetMessageWnd
CMFCPopupMenu::SetParentRibbonElement
CMFCPopupMenu::SetQuickCustomizeType
CMFCPopupMenu::SetQuickMode
CMFCPopupMenu::SetRightAlign Mengatur perataan menu untuk menu pop-up.
CMFCPopupMenu::SetSendMenuSelectMsg Mengatur bendera yang mengontrol apakah menu pop-up memberi tahu bingkai induknya saat pengguna memilih perintah.
CMFCPopupMenu::ShowAllCommands Memaksa menu pop-up untuk menampilkan semua perintah.
CMFCPopupMenu::TriggerResize
CMFCPopupMenu::UpdateAllShadows Memperbarui bayangan untuk semua menu pop-up yang dibuka.
CMFCPopupMenu::UpdateShadow Memperbarui bayangan untuk menu pop-up.

Metode yang Dilindungi

Nama Deskripsi
CMFCPopupMenu::CreateTearOffBar
CMFCPopupMenu::OnChangeHot
CMFCPopupMenu::OnChooseItem

Keterangan

Biasanya, MFC membuat menu pop-up secara otomatis. Jika Anda ingin membuat CMFCPopupMenu objek secara manual, alokasikan objek di timbunan lalu panggil CMFCPopupMenu::Create.

Contoh

Contoh berikut menunjukkan cara mengonfigurasi objek menu pop-up. Contoh menunjukkan cara mengatur logo dan suara menu pop-up, mengatur kecepatan dan jenis animasi, menggambar bayangan menu saat menu pop-up muncul di luar bingkai utama, mengatur lebar maksimum, dan mengatur perataan menu kanan menu pop-up. Cuplikan kode ini adalah bagian dari sampel Halaman Kustom.

// 30 is the size of the logo in pixels.
pPopupMenu->EnableMenuLogo(30);
pPopupMenu->EnableMenuSound();
// 500 is the animation speed in milliseconds.
pPopupMenu->SetAnimationSpeed(500);
pPopupMenu->SetAnimationType(CMFCPopupMenu::SLIDE);
pPopupMenu->SetForceShadow(true);
// 200 is the maximum width of the pop-up menu in pixels.
pPopupMenu->SetMaxWidth(200);
pPopupMenu->SetRightAlign();
pPopupMenu->InsertSeparator();

Hierarki Warisan

CObject

CCmdTarget

CWnd

CFrameWnd

CMiniFrameWnd

CMFCPopupMenu

Persyaratan

Header: afxpopupmenu.h

CMFCPopupMenu::ActivatePopupMenu

static BOOL __stdcall ActivatePopupMenu(
    CFrameWnd* pTopFrame,
    CMFCPopupMenu* pPopupMenu);

Parameter

[di] pTopFrame
[di] pPopupMenu

Tampilkan Nilai

Keterangan

CMFCPopupMenu::AlwaysShowEmptyToolsEntry

Mengatur apakah menu pop-up diaktifkan untuk menampilkan entri kosong untuk alat yang ditentukan pengguna.

static void AlwaysShowEmptyToolsEntry(BOOL bShow = TRUE);

Parameter

bShow
[di] TRUE jika menu pop-up dapat menampilkan entri kosong; FALSE jika tidak.

CMFCPopupMenu::AreAllCommandsShown

BOOL AreAllCommandsShown() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::CheckArea

Menentukan lokasi titik relatif terhadap menu pop-up.

MENUAREA_TYPE CheckArea(const CPoint& ptScreen) const;

Parameter

ptScreen
[di] Titik, dalam koordinat layar.

Tampilkan Nilai

Parameter MENUAREA_TYPE yang menunjukkan di mana titik relatif terhadap menu pop-up.

Keterangan

Parameter MENUAREA_TYPE dapat memiliki salah satu nilai berikut.

  • OUTSIDE - ptScreen berada di luar menu pop-up.

  • LOGO - ptScreen berada di atas area logo.

  • TEAROFF_CAPTION - ptScreen melebihi keterangan air mata.

  • SHADOW_BOTTOM - ptScreen berada di atas bayangan bawah menu pop-up.

  • SHADOW_RIGHT - ptScreen berada di atas bayangan kanan menu pop-up.

  • MENU - ptScreen melebihi perintah.

CMFCPopupMenu::CloseMenu

void CloseMenu(BOOL bSetFocusToBar = FALSE);

Parameter

[di] bSetFocusToBar

Keterangan

CMFCPopupMenu::CMFCPopupMenu

Membuat objek CMFCPopupMenu .

CMFCPopupMenu(
    CMFCToolBarsMenuPropertyPage* pCustPage,
    LPCTSTR lpszTitle);

Parameter

pCustPage
[di] Penunjuk ke halaman kustomisasi.

lpszTitle
[di] String yang berisi keterangan menu.

Keterangan

Metode ini mengalokasikan sumber daya untuk CMFCPopupMenu. Untuk membuat item menu pop-up, panggil CMFCPopupMenu::Create.

CMFCPopupMenu::Create

Membuat menu pop-up dan melampirkannya ke objek CMFCPopupMenu .

virtual BOOL Create(
    CWnd* pWndParent,
    int x,
    int y,
    HMENU hMenu,
    BOOL bLocked = FALSE,
    BOOL bOwnMessage = FALSE);

Parameter

pWndParent
[di] Jendela induk untuk CMFCPopupMenu.

x
[di] Koordinat layar horizontal untuk lokasi menu pop-up

y
[di] Koordinat layar vertikal untuk lokasi menu pop.

hMenu
[di] Handel ke sumber daya menu.

buntu
[di] Parameter Boolean yang menunjukkan apakah menu dapat disesuaikan. FALSE menunjukkan bahwa menu pop-up dapat disesuaikan.

bOwnMessage
[di] Parameter Boolean yang menunjukkan bagaimana kerangka kerja merutekan pesan menu. Lihat bagian Keterangan untuk detail selengkapnya.

Tampilkan Nilai

TRUE jika metode berhasil; jika tidak FALSE.

Keterangan

Jika bOwnMessage TRUE, kerangka kerja merutekan pesan menu apa pun ke pWndParent. pWndParent tidak boleh NULL jika bOwnMessage TRUE. Jika bOwnMessage FALSE, kerangka kerja merutekan pesan menu ke menu pop-up induk.

Contoh

Contoh berikut menunjukkan cara menggunakan Create metode CMFCPopuMenu kelas. Cuplikan kode ini adalah bagian dari sampel Halaman Kustom.

CMFCPopupMenu *pPopupMenu = new CMFCPopupMenu;
// CPoint point
// CMenu* pPopup
// The this pointer points to CMainFrame class which extends the CFrameWnd class.
pPopupMenu->Create(this, point.x, point.y, pPopup->Detach());

CMFCPopupMenu::CreateTearOffBar

virtual CPane* CreateTearOffBar(
    CFrameWnd* pWndMain,
    UINT uiID,
    LPCTSTR lpszName);

Parameter

[di] pWndMain
[di] uiID
[di] lpszName

Tampilkan Nilai

Keterangan

CMFCPopupMenu::D efaultMouseClickOnClose

virtual BOOL DefaultMouseClickOnClose() const;

Tampilkan Nilai

Keterangan

Menginisialisasi logo untuk menu pop-up.

void EnableMenuLogo(
    int iLogoSize,
    LOGO_LOCATION nLogoLocation = MENU_LOGO_LEFT);

Parameter

iLogoSize
[di] Ukuran logo, dalam piksel.

nLogoLocation
[di] Jenis data enumerasi yang menunjukkan lokasi logo.

Keterangan

Untuk menampilkan logo, terapkan metode CFrameWndEx::OnDrawMenuLogo di jendela bingkai utama.

Nilai yang mungkin untuk nLogoLocation adalah MENU_LOGO_LEFT, MENU_LOGO_RIGHT, MENU_LOGO_TOP, dan MENU_LOGO_BOTTOM.

CMFCPopupMenu::EnableMenuSound

Mengaktifkan suara menu.

static void EnableMenuSound(BOOL bEnable = TRUE);

Parameter

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

Keterangan

Jika Anda mengaktifkan suara, kerangka kerja memanggil metode PlaySound saat pengguna membuka menu pop-up atau memilih perintah menu. Secara default, fitur ini diaktifkan.

CMFCPopupMenu::EnableResize

void EnableResize(CSize sizeMinResize);

Parameter

[di] sizeMinResize

Keterangan

CMFCPopupMenu::EnableScrolling

void EnableScrolling(BOOL = TRUE);

Parameter

[di] BOOL

Keterangan

CMFCPopupMenu::EnableVertResize

void EnableVertResize(int nMinResize);

Parameter

[di] nMinResize

Keterangan

CMFCPopupMenu::FindSubItemByCommand

CMFCToolBarMenuButton* FindSubItemByCommand(UINT uiCmd) const;

Parameter

[di] uiCmd

Tampilkan Nilai

Keterangan

CMFCPopupMenu::GetActiveMenu

Mengembalikan menu yang saat ini aktif.

static CMFCPopupMenu* GetActiveMenu();

Tampilkan Nilai

Penunjuk ke menu pop-up aktif, atau NULL jika tidak ada menu pop-up yang saat ini aktif.

Keterangan

Setiap aplikasi dapat memiliki paling banyak satu menu pop-up aktif.

CMFCPopupMenu::GetAnimationSpeed

Mengembalikan kecepatan animasi untuk menu pop-up.

static UINT GetAnimationSpeed();

Tampilkan Nilai

Bilangan bulat yang menunjukkan waktu, dalam milidetik, yang diperlukan animasi menu pop-up untuk menyelesaikannya.

Keterangan

Kecepatan animasi adalah nilai global. Gunakan CMFCPopupMenu::SetAnimationSpeed untuk mengubah kecepatan animasi untuk menu pop-up.

CMFCPopupMenu::GetAnimationType

Mengembalikan tipe animasi pop-up saat ini.

static CMFCPopupMenu::ANIMATION_TYPE GetAnimationType(BOOL bNoSystem = FALSE);

Parameter

bNoSystem
[di] Parameter Boolean yang menunjukkan apakah metode ini memeriksa nilai global. FALSE jika Anda ingin metode ini mengembalikan gaya animasi untuk instans Kelas CMFCPopupMenu ini.

Tampilkan Nilai

Nilai enumerasi yang menjelaskan jenis animasi.

Keterangan

Gaya animasi untuk menu pop-up bersifat global untuk aplikasi Anda. Gunakan CMFCPopupMenu::SetAnimationType untuk mengatur gaya animasi.

Tabel berikut ini mencantumkan tipe animasi yang mungkin.

Nilai Deskripsi
NO_ANIMATION Menu pop-up tidak dianimasikan dan segera muncul.
TERUNGKAP Kerangka kerja mengungkapkan menu pop-up dari sudut kiri atas ke sudut kanan bawah.
SLIDE Menu pop-up berpindah dari atas ke bawah.
LAYU Menu pop-up pertama kali muncul transparan dan secara bertahap mempadatkan.

CMFCPopupMenu::GetDropDirection

DROP_DIRECTION GetDropDirection() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::GetForceMenuFocus

Menunjukkan apakah fokus dikembalikan ke bilah menu saat menu pop-up ditampilkan.

static BOOL GetForceMenuFocus();

Tampilkan Nilai

TRUE jika fokus input dikembalikan ke bilah menu saat menu pop-up ditampilkan; FALSE jika menu pop-up mempertahankan fokus.

Keterangan

Secara default, aplikasi Anda tidak mengembalikan fokus ke bilah menu. Untuk mengubah pengaturan ini, gunakan CMFCPopupMenu::SetForceMenuFocus.

CMFCPopupMenu::GetForceShadow

static BOOL __stdcall GetForceShadow();

Tampilkan Nilai

Keterangan

CMFCPopupMenu::GetHMenu

Mengembalikan handel ke sumber daya menu terlampir.

HMENU GetHMenu();

CMFCPopupMenu::GetMenuBar

Mengembalikan CMFCPopupMenuBar yang disematkan di dalam menu pop-up.

virtual CMFCPopupMenuBar* GetMenuBar();

Tampilkan Nilai

Penunjuk ke yang disematkan CMFCPopupMenuBar.

Keterangan

Menu pop-up memiliki objek yang disematkan CMFCPopupMenuBar . Anda harus mengambil alih metode ini di kelas turunan jika Anda menggunakan kelas tersemat yang berbeda.

CMFCPopupMenu::GetMenuItem

Mengembalikan penunjuk ke item menu pada indeks yang ditentukan.

CMFCToolBarMenuButton* GetMenuItem(int iIndex) const;

Parameter

iIndex
[di] Indeks berbasis nol dari item menu.

Tampilkan Nilai

Penunjuk ke item menu. NULL jika indeks tidak valid.

Keterangan

Item menu diwakili oleh Kelas CMFCToolBarMenuButton. Ketika Anda memanggil metode ini, metode ini mengembalikan penunjuk ke yang sesuai CMFCToolBarMenuButton.

CMFCPopupMenu::GetMenuItemCount

Mengembalikan jumlah item dalam menu pop-up.

int GetMenuItemCount() const;

Tampilkan Nilai

Jumlah item dalam menu.

CMFCPopupMenu::GetMessageWnd

Mengembalikan penunjuk ke jendela tempat kerangka kerja merutekan pesan menu pop-up.

CWnd* GetMessageWnd() const;

Tampilkan Nilai

Penunjuk ke jendela yang menerima pesan menu pop-up; NULL jika tidak ada jendela.

Keterangan

Saat Anda menggunakan metode CMFCPopupMenu::Buat untuk membuat menu pop-up, Anda menentukan jendela apa yang menerima pesan menu.

CMFCPopupMenu::GetParentArea

virtual CWnd* GetParentArea(CRect& rectParentBtn);

Parameter

[di] rectParentBtn

Tampilkan Nilai

Keterangan

CMFCPopupMenu::GetParentButton

Mengembalikan penunjuk ke tombol toolbar induk.

CMFCToolBarMenuButton* GetParentButton() const;

Tampilkan Nilai

Penunjuk ke tombol toolbar induk. NULL jika menu pop-up tidak memiliki tombol toolbar induk.

Keterangan

CMFCPopupMenu Dapat dikaitkan dengan tombol pada menu. Dalam skenario ini, menu pop-up muncul saat pengguna memilih tombol toolbar induk.

Jika menu pop-up adalah menu pintasan, menu tidak akan memiliki tombol toolbar induk.

CMFCPopupMenu::GetParentPopupMenu

Mengembalikan penunjuk ke menu pop-up induk.

CMFCPopupMenu* GetParentPopupMenu() const;

Tampilkan Nilai

Penunjuk ke objek induk CMFCPopupMenu ; NULL jika tidak ada menu pop-up induk.

Keterangan

Menu pop-up memiliki objek induk CMFCPopupMenu hanya jika merupakan submenu.

CMFCPopupMenu::GetParentRibbonElement

CMFCRibbonBaseElement* GetParentRibbonElement() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::GetParentToolBar

Mengembalikan penunjuk ke toolbar induk.

CMFCToolBar* GetParentToolBar() const;

Tampilkan Nilai

Penunjuk ke toolbar induk. NULL jika menu pop-up tidak memiliki toolbar induk.

Keterangan

CMFCPopupMenu Jika adalah menu pintasan, maka tidak memiliki toolbar induk.

CMFCPopupMenu::GetQuickCustomizeType

QUICK_CUSTOMIZE_TYPE GetQuickCustomizeType() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::GetSelItem

Mengembalikan penunjuk ke perintah menu yang saat ini dipilih.

CMFCToolBarMenuButton* GetSelItem();

Tampilkan Nilai

Penunjuk ke perintah menu yang saat ini dipilih; NULL jika tidak ada item yang dipilih.

Keterangan

Perintah menu pada menu pop-up diwakili oleh Kelas CMFCToolBarMenuButton, atau kelas yang berasal dari CMFCToolBarMenuButton.

CMFCPopupMenu::HasBeenResized

BOOL HasBeenResized() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::HideRarelyUsedCommands

Menunjukkan apakah menu pop-up dapat menyembunyikan perintah yang jarang digunakan.

BOOL HideRarelyUsedCommands() const;

Tampilkan Nilai

TRUE jika menu pop-up dapat menyembunyikan perintah yang jarang digunakan; jika tidak FALSE.

Keterangan

Metode ini hanya menentukan apakah menu pop-up dapat menyembunyikan perintah yang jarang digunakan, bukan jika konfigurasi tersebut diaktifkan. Menu pop-up dapat menyembunyikan perintah yang jarang digunakan jika memiliki tombol induk dan jendela induk berasal dari Kelas CMFCMenuBar. Gunakan CMFCMenuBar::SetRecentlyUsedMenus untuk mengaktifkan fitur ini dan CMFCMenuBar::IsRecentlyUsedMenus untuk menentukan apakah fitur ini saat ini diaktifkan. Anda harus memanggil kedua metode ini untuk jendela induk.

CMFCPopupMenu::InCommand

virtual BOOL InCommand();

Tampilkan Nilai

Keterangan

CMFCPopupMenu::InsertItem

Sisipkan item baru ke menu pop-up pada lokasi yang ditentukan.

int InsertItem(
    const CMFCToolBarMenuButton& button,
    int iInsertA = -1);

Parameter

kancing
[di] Referensi ke item menu untuk ditambahkan.

iInsertAt
[di] Indeks berbasis nol untuk item baru. Jika iInsertAt adalah -1, item ditambahkan ke akhir menu.

Tampilkan Nilai

Indeks berbasis nol dari posisi tempat item disisipkan. -1 jika metode gagal.

Keterangan

Metode ini akan gagal jika Anda memberikan nilai yang tidak valid untuk iInsertAt, seperti bilangan bulat yang lebih besar dari jumlah item yang saat ini ada di menu pop-up.

CMFCPopupMenu::InsertSeparator

Menyisipkan pemisah ke dalam menu pop-up di lokasi yang ditentukan.

int InsertSeparator(int iInsertAt = -1);

Parameter

iInsertAt
[di] Indeks berbasis nol dari posisi di mana metode ini akan menyisipkan pemisah.

Tampilkan Nilai

Indeks berbasis nol dari posisi tempat pemisah dimasukkan. -1 jika metode ini gagal.

Keterangan

Nilai -1 untuk iInsertAt berarti metode ini akan menambahkan pemisah ke akhir menu pop-up.

Metode ini gagal jika iInsertAt adalah nilai yang tidak valid.

CMFCPopupMenu::IsAlwaysClose

virtual BOOL IsAlwaysClose() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::IsAlwaysShowEmptyToolsEntry

static BOOL __stdcall IsAlwaysShowEmptyToolsEntry();

Tampilkan Nilai

Keterangan

CMFCPopupMenu::IsCustomizePane

Menunjukkan apakah menu pop-up berfungsi sebagai QuickCustomizePane.

BOOL IsCustomizePane();

Tampilkan Nilai

TRUE jika pop-up adalah QuckCustomizePane; jika tidak, FALSE.

Keterangan

Gunakan QuickCustomizePane untuk memungkinkan pengguna menyesuaikan menu pop-up secara langsung. QuickCustomizePane adalah CMFCPopupMenu yang muncul ketika pengguna mengklik tombol toolbar untuk mengeditnya secara langsung.

Aplikasi Anda harus memanggil metode ini selama CMDIFrameWndEx::OnShowCustomizePane.

CMFCPopupMenu::IsEscClose

BOOL IsEscClose();

Tampilkan Nilai

Keterangan

CMFCPopupMenu::IsIdle

Menunjukkan apakah menu pop-up saat ini menganggur.

virtual BOOL IsIdle() const;

Tampilkan Nilai

TRUE jika menu pop-up dalam mode diam; jika tidak FALSE.

Keterangan

Secara default, menu pop-up dalam mode diam jika animasi tampilan selesai dan pengguna tidak menggulir menu pop-up.

CMFCPopupMenu::IsMenuSound

static UINT __stdcall IsMenuSound();

Tampilkan Nilai

Keterangan

CMFCPopupMenu::IsQuickCustomize

Menentukan apakah Kelas CMFCToolBarMenuButton terkait berada dalam mode QuickCustomize.

BOOL IsQuickCustomize();

Tampilkan Nilai

TRUE jika tombol menu terkait berada dalam mode QuickCustomize; jika tidak FALSE. Metode ini juga akan mengembalikan FALSE jika menu pop-up tidak terkait dengan CMFCToolBarMenuButton.

Keterangan

Dalam mode QuickCustomize, pengguna memilih tombol pada toolbar untuk menyesuaikan tombol secara langsung.

CMFCPopupMenu::IsResizeble

BOOL IsResizeble() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::IsRightAlign

Menunjukkan apakah menu rata kanan atau rata kiri.

BOOL IsRightAlign() const;

Tampilkan Nilai

TRUE jika menu rata kanan; FALSE jika menu rata kiri.

Keterangan

Anda dapat menggunakan CMFCPopupMenu::SetRightAlign untuk mengatur perataan menu. Secara default, menu pop-up menggunakan perataan kiri.

Perataan menu bukan pengaturan global dan dapat bervariasi di antara menu pop-up.

CMFCPopupMenu::IsScrollable

BOOL IsScrollable() const;

Tampilkan Nilai

Keterangan

CMFCPopupMenu::IsSendMenuSelectMsg

Menunjukkan apakah kerangka kerja memberi tahu bingkai induk saat pengguna memilih perintah dari menu pop-up.

static BOOL IsSendMenuSelectMsg();

Tampilkan Nilai

TRUE jika kerangka kerja memberi tahu bingkai induk; jika tidak FALSE.

Keterangan

Kerangka kerja memberi tahu bingkai induk dengan mengirimkannya pesan WM_MENUSELECT saat digunakan memilih perintah menu.

CMFCPopupMenu::IsShown

Menunjukkan apakah menu pop-up saat ini terlihat.

BOOL IsShown() const;

Tampilkan Nilai

TRUE jika menu pop-up terlihat; jika tidak FALSE.

CMFCPopupMenu::MoveTo

void MoveTo(const CPoint& pt);

Parameter

[di] Pt

Keterangan

CMFCPopupMenu::OnChangeHot

virtual void OnChangeHot(int nHot);

Parameter

[di] nHot

Keterangan

CMFCPopupMenu::OnChooseItem

virtual void OnChooseItem(UINT uidCmdID);

Parameter

[di] uidCmdID

Keterangan

CMFCPopupMenu::OnCmdMsg

virtual BOOL OnCmdMsg(
    UINT nID,
    int nCode,
    void* pExtra,
    AFX_CMDHANDLERINFO* pHandlerInfo);

Parameter

[di] Nid
[di] nCode
[di] pExtra
[di] pHandlerInfo

Tampilkan Nilai

Keterangan

CMFCPopupMenu::P ostCommand

BOOL PostCommand(UINT uiCommandID);

Parameter

[di] uiCommandID

Tampilkan Nilai

Keterangan

CMFCPopupMenu::P reTranslateMessage

virtual BOOL PreTranslateMessage(MSG* pMsg);

Parameter

[di] pMsg

Tampilkan Nilai

Keterangan

CMFCPopupMenu::RecalcLayout

virtual void RecalcLayout(BOOL bNotify = TRUE);

Parameter

[di] bNotify

Keterangan

CMFCPopupMenu::RemoveAllItems

Menghapus semua item dari menu pop-up.

void RemoveAllItems();

CMFCPopupMenu::RemoveItem

Menghapus item yang ditentukan dari menu pop-up.

BOOL RemoveItem(int iIndex);

Parameter

iIndex
[di] Indeks berbasis nol dari item yang akan dihapus.

Tampilkan Nilai

TRUE jika metode berhasil; jika tidak FALSE.

Keterangan

Metode ini secara otomatis mengatur pemisah apa pun yang terpengaruh oleh penghapusan item. Untuk informasi selengkapnya tentang cara kerangka kerja menyusun ulang pemisah, lihat CMFCToolBar::RemoveButton.

CMFCPopupMenu::SaveState

virtual void SaveState();

Keterangan

CMFCPopupMenu::SetAnimationSpeed

Mengatur kecepatan animasi untuk menu pop-up.

static void SetAnimationSpeed(UINT nElapse);

Parameter

nElapse
[di] Kecepatan animasi baru, dalam milidetik.

Keterangan

Kecepatan animasi adalah nilai global dan memengaruhi semua menu pop-up dalam aplikasi. Nilai ini menentukan berapa lama waktu yang diperlukan untuk animasi agar menu pop-up selesai.

Secara default, parameter ini diatur ke 30 milidetik. Rentang nilai yang valid untuk nElapse adalah dari 0 hingga 200.

CMFCPopupMenu::SetAnimationType

Menyetel tipe animasi untuk menu pop-up ini.

static void SetAnimationType(CMFCPopupMenu::ANIMATION_TYPE type);

Parameter

jenis
[di] Jenis data enumerasi yang menentukan jenis animasi.

Keterangan

Lihat CMFCPopupMenu::GetAnimationType untuk daftar nilai yang valid untuk jenis.

CMFCPopupMenu::SetAutoDestroy

void SetAutoDestroy(BOOL bAutoDestroy = TRUE);

Parameter

[di] bAutoDestroy

Keterangan

CMFCPopupMenu::SetDefaultItem

Mengatur perintah default untuk menu pop-up.

void SetDefaultItem(UINT uiCmd);

Parameter

uiCmd
[di] ID perintah menu dari perintah default baru.

Keterangan

Perintah default di menu pop-up adalah perintah yang dipilih saat menu pop-up muncul.

CMFCPopupMenu::SetForceMenuFocus

Memaksa fokus input untuk kembali ke bilah menu saat menu pop-up ditampilkan.

static void SetForceMenuFocus(BOOL bValue);

Parameter

bValue
[di] TRUE jika Anda ingin kerangka kerja memaksa fokus input ke bilah menu saat menu pop-up ditampilkan. FALSE jika Anda ingin menu pop-up mempertahankan fokus.

Keterangan

Metode ini menetapkan bendera yang bersifat global untuk semua menu pop-up dalam aplikasi. Secara default, fitur ini tidak diaktifkan.

CMFCPopupMenu::SetForceShadow

Memaksa kerangka kerja untuk menggambar bayangan menu saat menu pop-up muncul di luar bingkai utama.

static void SetForceShadow(BOOL bValue);

Parameter

bValue
[di] TRUE jika Anda ingin kerangka kerja menggambar bayangan menu, FALSE jika tidak.

Keterangan

Saat Anda memanggil metode ini, metode ini menetapkan bendera global di aplikasi Anda. Bendera ini memengaruhi semua menu pop-up di aplikasi Anda.

CMFCPopupMenu::SetMaxWidth

Atur lebar maksimum untuk menu pop-up.

void SetMaxWidth(int iMaxWidth);

Parameter

iMaxWidth
[di] Lebar maksimum untuk menu pop-up, dalam piksel.

Keterangan

Jika teks yang terkait dengan perintah menu tidak akan pas dalam lebar maksimum, teks dipotong dan bagian yang tidak pas diganti dengan tiga titik.

CMFCPopupMenu::SetMessageWnd

void SetMessageWnd(CWnd* pMsgWnd);

Parameter

[di] pMsgWnd

Keterangan

CMFCPopupMenu::SetParentRibbonElement

void SetParentRibbonElement(CMFCRibbonBaseElement* pElem);

Parameter

[di] pElem

Keterangan

CMFCPopupMenu::SetQuickCustomizeType

void SetQuickCustomizeType(QUICK_CUSTOMIZE_TYPE Type);

Parameter

[di] Jenis

Keterangan

CMFCPopupMenu::SetQuickMode

void SetQuickMode();

Keterangan

CMFCPopupMenu::SetRightAlign

Mengatur perataan menu untuk menu pop-up.

void SetRightAlign(BOOL bRightAlign = TRUE);

Parameter

bRightAlign
[di] Boolean yang menunjukkan perataan menu. TRUE menunjukkan perataan kanan, FALSE menunjukkan perataan kiri.

Keterangan

Secara default, semua menu pop-up diratakan kiri.

CMFCPopupMenu::SetSendMenuSelectMsg

Mengatur bendera yang mengontrol apakah menu pop-up memberi tahu bingkai induknya saat pengguna memilih perintah.

static void SetSendMenuSelectMsg(BOOL bSet = TRUE);

Parameter

bSet
[di] TRUE jika menu pop-up memberi tahu bingkai induknya, FALSE jika tidak.

Keterangan

Ini adalah opsi global untuk semua menu pop-up dalam aplikasi. Jika diaktifkan, menu pop-up akan mengirim pesan WM_MENUSELECT ke bingkai induk saat pengguna memilih perintah.

CMFCPopupMenu::ShowAllCommands

Memaksa menu pop-up untuk menampilkan semua perintah.

void ShowAllCommands();

Keterangan

Ini bukan pengaturan global dan hanya memengaruhi menu pop-up saat ini.

CMFCPopupMenu::TriggerResize

void TriggerResize();

Keterangan

CMFCPopupMenu::UpdateAllShadows

Memperbarui bayangan untuk semua menu pop-up yang dibuka.

static void UpdateAllShadows(LPRECT lprectScreen = NULL);

Parameter

lprectScreen
[di] Persegi panjang yang menentukan wilayah yang akan diperbarui, dalam koordinat layar.

Keterangan

Metode ini berguna ketika menu pop-up ditampilkan melalui kontrol animasi atau jendela lain yang memiliki konten dinamis.

CMFCPopupMenu::UpdateShadow

Memperbarui bayangan untuk menu pop-up.

void UpdateShadow(LPRECT lprectScreen = NULL);

Parameter

lprectScreen
[di] Persegi panjang, dalam koordinat layar, yang menentukan batas wilayah yang akan diperbarui.

Keterangan

Panggil metode ini saat menu pop-up yang memiliki bayangan tumpang tindih dengan gambar animasi.

Lihat juga

Bagan Hierarki
Kelas
Kelas CMFCPopupMenuBar