这篇教程C++ GetMenuCount函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中GetMenuCount函数的典型用法代码示例。如果您正苦于以下问题:C++ GetMenuCount函数的具体用法?C++ GetMenuCount怎么用?C++ GetMenuCount使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了GetMenuCount函数的23个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: GetMenuCountvoid wxMenuBar::RebuildAccelTable(){ // // Merge the accelerators of all menus into one accel table // size_t nAccelCount = 0; size_t i; size_t nCount = GetMenuCount(); wxMenuList::iterator it; for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { nAccelCount += (*it)->GetAccelCount(); } if (nAccelCount) { wxAcceleratorEntry* pAccelEntries = new wxAcceleratorEntry[nAccelCount]; nAccelCount = 0; for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { nAccelCount += (*it)->CopyAccels(&pAccelEntries[nAccelCount]); } m_vAccelTable = wxAcceleratorTable( nAccelCount ,pAccelEntries ); delete [] pAccelEntries; }} // end of wxMenuBar::RebuildAccelTable
开发者ID:esrrhs,项目名称:fuck-music-player,代码行数:29,
示例2: SetMenuBarFrame// Destroy menubar, but keep data structures intact so we can recreate it.bool wxMenuBar::DestroyMenuBar(){ if (!m_mainWidget) { SetMenuBarFrame(NULL); return false; } XtUnmanageChild ((Widget) m_mainWidget); XtUnrealizeWidget ((Widget) m_mainWidget); size_t menuCount = GetMenuCount(); for (size_t i = 0; i < menuCount; i++) { wxMenu *menu = GetMenu(i); menu->DestroyMenu(true); } XtDestroyWidget((Widget) m_mainWidget); m_mainWidget = (WXWidget) 0; SetMenuBarFrame(NULL); return true;}
开发者ID:czxxjtu,项目名称:wxPython-1,代码行数:26,
示例3: GetMenuCountvoid wxMenuBar::RebuildAccelTable(){ // merge the accelerators of all menus into one accel table size_t nAccelCount = 0; size_t i, count = GetMenuCount(); wxMenuList::iterator it; for ( i = 0, it = m_menus.begin(); i < count; i++, it++ ) { nAccelCount += (*it)->GetAccelCount(); } if ( nAccelCount ) { wxAcceleratorEntry *accelEntries = new wxAcceleratorEntry[nAccelCount]; nAccelCount = 0; for ( i = 0, it = m_menus.begin(); i < count; i++, it++ ) { nAccelCount += (*it)->CopyAccels(&accelEntries[nAccelCount]); } SetAcceleratorTable(wxAcceleratorTable(nAccelCount, accelEntries)); delete [] accelEntries; } else // No (more) accelerators. { SetAcceleratorTable(wxAcceleratorTable()); }}
开发者ID:xiyuera,项目名称:wxWidgets,代码行数:30,
示例4: wxASSERTint wxMenuBar::MSWPositionForWxMenu(wxMenu *menu, int wxpos){ wxASSERT(menu); wxASSERT(menu->GetHMenu()); wxASSERT(m_hMenu);#if defined(__WXWINCE__) int totalMSWItems = GetMenuCount();#else int totalMSWItems = GetMenuItemCount((HMENU)m_hMenu);#endif int i; // For old C++ compatibility for(i=wxpos; i<totalMSWItems; i++) { if(GetSubMenu((HMENU)m_hMenu,i)==(HMENU)menu->GetHMenu()) return i; } for(i=0; i<wxpos; i++) { if(GetSubMenu((HMENU)m_hMenu,i)==(HMENU)menu->GetHMenu()) return i; } wxFAIL; return -1;}
开发者ID:xiyuera,项目名称:wxWidgets,代码行数:26,
示例5: wxCHECK_MSG// Gets the original label at the top-level of the menubarwxString wxMenuBar::GetMenuLabel(size_t pos) const{ wxCHECK_MSG( pos < GetMenuCount(), wxEmptyString, wxT("invalid menu index in wxMenuBar::GetMenuLabel") ); return m_titles[pos];}
开发者ID:LuaDist,项目名称:wxwidgets,代码行数:8,
示例6: wxCHECK_MSGbool wxMenuBar::Append(wxMenu *menu, const wxString& title){ WXHMENU submenu = menu ? menu->GetHMenu() : 0; wxCHECK_MSG( submenu, false, wxT("can't append invalid menu to menubar") ); if ( !wxMenuBarBase::Append(menu, title) ) return false; menu->wxMenuBase::SetTitle(title);#if defined(WINCE_WITHOUT_COMMANDBAR) if (IsAttached())#else if (GetHmenu())#endif {#if defined(WINCE_WITHOUT_COMMANDBAR) if (!GetToolBar()) return false; TBBUTTON tbButton; memset(&tbButton, 0, sizeof(TBBUTTON)); tbButton.iBitmap = I_IMAGENONE; tbButton.fsState = TBSTATE_ENABLED; tbButton.fsStyle = TBSTYLE_DROPDOWN | TBSTYLE_NO_DROPDOWN_ARROW | TBSTYLE_AUTOSIZE; size_t pos = GetMenuCount(); HMENU hPopupMenu = (HMENU) menu->GetHMenu() ; tbButton.dwData = (DWORD)hPopupMenu; wxString label = wxStripMenuCodes(title); tbButton.iString = (int) label.wx_str(); tbButton.idCommand = NewControlId(); if (!::SendMessage((HWND) GetToolBar()->GetHWND(), TB_INSERTBUTTON, pos, (LPARAM)&tbButton)) { wxLogLastError(wxT("TB_INSERTBUTTON")); return false; }#else if ( !::AppendMenu(GetHmenu(), MF_POPUP | MF_STRING, (UINT_PTR)submenu, title.wx_str()) ) { wxLogLastError(wxT("AppendMenu")); }#endif#if wxUSE_ACCEL if ( menu->HasAccels() ) { // need to rebuild accelerator table RebuildAccelTable(); }#endif // wxUSE_ACCEL if (IsAttached()) Refresh(); } return true;}
开发者ID:Zombiebest,项目名称:Dolphin,代码行数:59,
示例7: GetMenuCountvoid wxMenuBar::RebuildAccelTable(){ // // Merge the accelerators of all menus into one accel table // size_t nAccelCount = 0; size_t i; size_t nCount = GetMenuCount(); wxMenuList::iterator it;#if defined(__INTEL_COMPILER) && 1 // VDM auto patch# pragma ivdep# pragma swp# pragma unroll#endif#if defined(__INTEL_COMPILER) && 1 /* VDM auto patch */# pragma ivdep# pragma swp# pragma unroll# pragma prefetch# if 0# pragma simd noassert# endif#endif /* VDM auto patch */ for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { nAccelCount += (*it)->GetAccelCount(); } if (nAccelCount) { wxAcceleratorEntry* pAccelEntries = new wxAcceleratorEntry[nAccelCount]; nAccelCount = 0;#if defined(__INTEL_COMPILER) && 1 // VDM auto patch# pragma ivdep# pragma swp# pragma unroll#endif#if defined(__INTEL_COMPILER) && 1 /* VDM auto patch */# pragma ivdep# pragma swp# pragma unroll# pragma prefetch# if 0# pragma simd noassert# endif#endif /* VDM auto patch */ for (i = 0, it = m_menus.begin(); i < nCount; i++, it++) { nAccelCount += (*it)->CopyAccels(&pAccelEntries[nAccelCount]); } m_vAccelTable = wxAcceleratorTable( nAccelCount ,pAccelEntries ); delete [] pAccelEntries; }} // end of wxMenuBar::RebuildAccelTable
开发者ID:vdm113,项目名称:wxWidgets-ICC-patch,代码行数:57,
示例8: wxCHECK_MSGbool wxMenuBar::Enable(bool enable){ wxCHECK_MSG( IsAttached(), false, wxT("doesn't work with unattached menubars") ); size_t i; for (i = 0; i < GetMenuCount(); i++) EnableTop(i, enable); return true;}
开发者ID:iokto,项目名称:newton-dynamics,代码行数:10,
示例9: GetMenuCountvoid wxMenuBarBase::UpdateMenus(){ wxMenu* menu; int nCount = GetMenuCount(); for (int n = 0; n < nCount; n++) { menu = GetMenu( n ); if (menu != NULL) menu->UpdateUI( NULL ); }}
开发者ID:Zombiebest,项目名称:Dolphin,代码行数:11,
示例10: MSWGetTopMenuPosint wxMenuBar::MSWGetTopMenuPos(WXHMENU hMenu) const{ for ( size_t n = 0 ; n < GetMenuCount(); ++n ) { wxMenu* menu = GetMenu(n)->MSWGetMenu(hMenu); if ( menu ) return n; } return wxNOT_FOUND;}
开发者ID:CodeSmithyIDE,项目名称:wxWidgets,代码行数:11,
示例11: PreCreation// Create menubarbool wxMenuBar::CreateMenuBar(wxFrame* parent){ m_parent = parent; // bleach... override it! PreCreation(); m_parent = NULL; if (m_mainWidget) { XtVaSetValues((Widget) parent->GetMainWidget(), XmNmenuBar, (Widget) m_mainWidget, NULL); /* if (!XtIsManaged((Widget) m_mainWidget)) XtManageChild((Widget) m_mainWidget); */ XtMapWidget((Widget) m_mainWidget); return true; } Widget menuBarW = XmCreateMenuBar ((Widget) parent->GetMainWidget(), wxMOTIF_STR("MenuBar"), NULL, 0); m_mainWidget = (WXWidget) menuBarW; size_t menuCount = GetMenuCount(); for (size_t i = 0; i < menuCount; i++) { wxMenu *menu = GetMenu(i); wxString title(m_titles[i]); menu->SetButtonWidget(menu->CreateMenu (this, menuBarW, menu, i, title, true)); if (strcmp (wxStripMenuCodes(title), "Help") == 0) XtVaSetValues ((Widget) menuBarW, XmNmenuHelpWidget, (Widget) menu->GetButtonWidget(), NULL); // tear off menu support#if (XmVersion >= 1002) if ( menu->IsTearOff() ) { XtVaSetValues(GetWidget(menu), XmNtearOffModel, XmTEAR_OFF_ENABLED, NULL); Widget tearOff = XmGetTearOffControl(GetWidget(menu)); wxDoChangeForegroundColour((Widget) tearOff, m_foregroundColour); wxDoChangeBackgroundColour((Widget) tearOff, m_backgroundColour, true); }#endif } PostCreation(); XtVaSetValues((Widget) parent->GetMainWidget(), XmNmenuBar, (Widget) m_mainWidget, NULL); XtRealizeWidget ((Widget) menuBarW); XtManageChild ((Widget) menuBarW); SetMenuBarFrame(parent); return true;}
开发者ID:CodeTickler,项目名称:wxWidgets,代码行数:55,
示例12: ChangeFontbool wxMenuBar::SetFont(const wxFont& font){ m_font = font; ChangeFont(); size_t menuCount = GetMenuCount(); for (size_t i = 0; i < menuCount; i++) m_menus.Item(i)->GetData()->SetFont(font); return true;}
开发者ID:CodeTickler,项目名称:wxWidgets,代码行数:11,
示例13: wxCHECK_RETvoid wxMenuBar::EnableTop(size_t pos, bool enable){ wxCHECK_RET( IsAttached(), wxT("doesn't work with unattached menubars") ); wxCHECK_RET( pos < GetMenuCount(), wxT("invalid menu index") ); int flag = enable ? MF_ENABLED : MF_GRAYED; EnableMenuItem((HMENU)m_hMenu, MSWPositionForWxMenu(GetMenu(pos),pos), MF_BYPOSITION | flag); Refresh();}
开发者ID:Zombiebest,项目名称:Dolphin,代码行数:11,
示例14: WX_CLEAR_LISTconst wxMenuInfoHelperList& wxMenuBarBase::GetMenuInfos() const{ wxMenuInfoHelperList* list = const_cast< wxMenuInfoHelperList* > (& m_menuInfos); WX_CLEAR_LIST( wxMenuInfoHelperList, *list); for (size_t i = 0 ; i < GetMenuCount(); ++i) { wxMenuInfoHelper* info = new wxMenuInfoHelper(); info->Create( GetMenu(i), GetMenuLabel(i)); list->Append(info); } return m_menuInfos;}
开发者ID:Zombiebest,项目名称:Dolphin,代码行数:12,
示例15: GetMenuCountwxMenuItem *wxMenuBar::FindItem(int id, wxMenu **itemMenu) const{ if ( itemMenu ) *itemMenu = NULL; wxMenuItem *item = NULL; size_t count = GetMenuCount(); for ( size_t i = 0; !item && (i < count); i++ ) item = _wxMenuAt(m_menus, i)->FindItem(id, itemMenu); return item;}
开发者ID:czxxjtu,项目名称:wxPython-1,代码行数:12,
示例16: wxDoChangeForegroundColourbool wxMenuBar::SetForegroundColour(const wxColour& col){ m_foregroundColour = col; if (m_mainWidget) wxDoChangeForegroundColour(m_mainWidget, (wxColour&) col); size_t menuCount = GetMenuCount(); for (size_t i = 0; i < menuCount; i++) m_menus.Item(i)->GetData()->SetForegroundColour((wxColour&) col); return true;}
开发者ID:LuaDist,项目名称:wxwidgets,代码行数:12,
示例17: WX_CLEAR_LISTconst wxMenuInfoList& wxMenuBar::GetMenuInfos() const{ wxMenuInfoList* list = const_cast< wxMenuInfoList* >( &m_menuInfos ) ; WX_CLEAR_LIST( wxMenuInfoList , *list ) ; for( size_t i = 0 ; i < GetMenuCount() ; ++i ) { wxMenuInfo* info = new wxMenuInfo() ; info->Create( const_cast<wxMenuBar*>(this)->GetMenu(i) , GetLabelTop(i) ) ; list->Append( info ) ; } return m_menuInfos ;}
开发者ID:HackLinux,项目名称:chandler-1,代码行数:12,
示例18: wxStripMenuCodes// Find the menu menuString, item itemString, and return the item id.// Returns -1 if none found.int wxMenuBar::FindMenuItem(const wxString& menuString, const wxString& itemString) const{ const wxString stripped = wxStripMenuCodes(menuString); size_t menuCount = GetMenuCount(); for (size_t i = 0; i < menuCount; i++) { if ( wxStripMenuCodes(m_titles[i]) == stripped ) return m_menus.Item(i)->GetData()->FindItem (itemString); } return wxNOT_FOUND;}
开发者ID:CodeTickler,项目名称:wxWidgets,代码行数:14,
示例19: wxStripMenuCodes// Find the itemString in menuString, and return the item id or wxNOT_FOUNDint wxMenuBar::FindMenuItem(const wxString& menuString, const wxString& itemString) const{ wxString menuLabel = wxStripMenuCodes(menuString); size_t count = GetMenuCount(); for ( size_t i = 0; i < count; i++ ) { wxString title = wxStripMenuCodes(m_titles[i]); if ( menuLabel == title ) return _wxMenuAt(m_menus, i)->FindItem(itemString); } return wxNOT_FOUND;}
开发者ID:czxxjtu,项目名称:wxPython-1,代码行数:15,
示例20: GetMenuCountwxMenuItem *wxMenuBar::FindItem(int id, wxMenu ** itemMenu) const{ if (itemMenu) *itemMenu = NULL; size_t menuCount = GetMenuCount(); for (size_t i = 0; i < menuCount; i++) { wxMenuItem *item = m_menus.Item(i)->GetData()->FindItem(id, itemMenu); if (item) return item; } return NULL;}
开发者ID:CodeTickler,项目名称:wxWidgets,代码行数:14,
示例21: wxDoChangeForegroundColourbool wxMenuBar::SetForegroundColour(const wxColour& col){ if (!wxWindowBase::SetForegroundColour(col)) return false; if (!col.IsOk()) return false; if (m_mainWidget) wxDoChangeForegroundColour(m_mainWidget, (wxColour&) col); size_t menuCount = GetMenuCount(); for (size_t i = 0; i < menuCount; i++) m_menus.Item(i)->GetData()->SetForegroundColour((wxColour&) col); return true;}
开发者ID:CodeTickler,项目名称:wxWidgets,代码行数:15,
示例22: GetMenuCountwxMenuItem *wxMenuBarBase::FindItem(int id, wxMenu **menu) const{ if ( menu ) *menu = NULL; wxMenuItem *item = NULL; size_t count = GetMenuCount(), i; wxMenuList::const_iterator it; for ( i = 0, it = m_menus.begin(); !item && (i < count); i++, it++ ) { item = (*it)->FindItem(id, menu); } return item;}
开发者ID:czxxjtu,项目名称:wxPython-1,代码行数:15,
示例23: wxCHECK_MSG// get the menu with given handle (recursively)wxMenu* wxMenuBar::MSWGetMenu(WXHMENU hMenu){ wxCHECK_MSG( GetHMenu() != hMenu, NULL, wxT("wxMenuBar::MSWGetMenu(): menu handle is wxMenuBar, not wxMenu") ); // query all menus for ( size_t n = 0 ; n < GetMenuCount(); ++n ) { wxMenu* menu = GetMenu(n)->MSWGetMenu(hMenu); if ( menu ) return menu; } // unknown hMenu return NULL;}
开发者ID:beanhome,项目名称:dev,代码行数:17,
注:本文中的GetMenuCount函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ GetMenuItemCount函数代码示例 C++ GetMenu函数代码示例 |