Sdílet prostřednictvím


CWnd::GetSystemMenu

Umožňuje aplikaci přístup k nabídce ovládací prvek pro kopírování a změna.

CMenu* GetSystemMenu( 
   BOOL bRevert  
) const;

Parametry

  • bRevert
    Určuje akci, která mají být přijata.Pokud bRevert je FALSE, GetSystemMenu vrátí popisovač kopii nabídky řízení právě používán.Tato kopie je původně shodné řídicí nabídce však lze upravit.Pokud bRevert je TRUE, GetSystemMenu obnoví výchozí stav nabídky řízení.Předchozí, případně pozměněné, řídit nabídky, pokud existuje, zničeny.Vrácená hodnota je definován v tomto případě.

Vrácená hodnota

Identifikuje kopii nabídky řízení, pokud bRevert je FALSE.Pokud bRevert je TRUE, vrácená hodnota je undefined.

Vrácený ukazatel může být dočasné a neměli uložen pro pozdější použití.

Poznámky

Všechny okna, která nepoužívá GetSystemMenu vlastní kopii ovládací nabídka obdrží standardní nabídky řízení.

Vrácený ukazatel GetSystemMenu členské funkce lze použít s CMenu::AppendMenu, CMenu::InsertMenu, nebo CMenu::ModifyMenu funkce změnit v nabídce ovládání.

Ovládací nabídka původně obsahuje položky označeny jako s různými hodnotami ID SC_CLOSE, SC_MOVE, a SC_SIZE.Generovat položky v nabídce ovládací WM_SYSCOMMAND zprávy.Všechny předdefinované položky nabídky řízení mají identifikační čísla větší než 0xF000.Pokud aplikace přidá položky do nabídky řízení, je použít ID čísla menší než F000.

Systém Windows může automaticky znepřístupnit položky standardní řídicí nabídce.CWndmůžete provádět vlastní výběr nebo nedostupnost reagovat na WM_INITMENU zpráv, které jsou odeslány před zobrazením všechny nabídky.

Příklad

// The following code fragment is taken from CMyDlg::OnInitDialog 
// CMyDlg is derived from CDialog 

// Add "About..." menu item to system menu.

// IDM_ABOUTBOX must be in the system command range.
ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX);
ASSERT(IDM_ABOUTBOX < 0xF000);

CMenu* pSysMenu = GetSystemMenu(FALSE);
if (pSysMenu != NULL)
{
   CString strAboutMenu;
   strAboutMenu.LoadString(IDS_ABOUT);
   if (!strAboutMenu.IsEmpty())
   {
      pSysMenu->AppendMenu(MF_SEPARATOR);
      pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu);
   }
}

// Set the icon for this dialog. The framework does this automatically 
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE);   // Set big icon
SetIcon(m_hIcon, FALSE);  // Set small icon

Požadavky

Záhlaví: afxwin.h

Viz také

Referenční dokumentace

Třída CWnd

Graf hierarchie

CMenu::AppendMenu

CMenu::InsertMenu

CMenu::ModifyMenu

GetSystemMenu