zoukankan      html  css  js  c++  java
  • windows mobile 5.0 下创建菜单

    在开发时经常要创建菜单,并且动态显示和隐藏菜单或者是某个子菜单。以下就是实现的方法:

    1。创建并显示菜单
     SHMENUBARINFO mbi;
      ZeroMemory(&mbi, sizeof(SHMENUBARINFO));
      mbi.cbSize=sizeof(SHMENUBARINFO);
      mbi.hwndParent=m_hWnd;
      mbi.hInstRes=::AfxGetInstanceHandle();
      mbi.dwFlags=SHCMBF_HMENU|SHCMBF_HIDESIPBUTTON;//隐藏SIP
      mbi.nToolBarId=IDR_MYMENU;
      SHCreateMenuBar(&mbi);

    2。隐藏菜单
    HWND hwnd=::SHFindMenuBar(m_hWnd);
     if(hwnd!=NULL)
      ::ShowWindow(hwnd,SW_HIDE);

    3。隐藏某个子菜单
     TBBUTTONINFO tbbi = {0};
       tbbi.cbSize = sizeof(TBBUTTONINFO);
       tbbi.dwMask = TBIF_LPARAM | TBIF_BYINDEX;               
       ::SendMessageW(mbi.hwndMB, TB_GETBUTTONINFO,1, (LPARAM)&tbbi); //1为SK1,2为SK2
       g_hMenu = (HMENU)tbbi.lParam;//g_hMenu为全局变量,这样就可以在任何地方隐藏子菜单了

     EnableMenuItem(g_Menu,ID_TEST,MF_GRAYED);//隐藏子菜单
    //显示子菜单 EnableMenuItem(g_Menu,ID_TEST,MF_ENABLED);

    4。使某个SK不可用
    ::SHEnableSoftkey(mbi.hwndMB,0,TRUE,FALSE);
  • 相关阅读:
    5、视图
    4、数据更新
    3、聚合与排序
    2、查询基础
    1、数据库和SQL
    Day-13:组合查询
    Day-12:创建高级联结
    Day-11:联结表
    Day-10:使用子查询
    Day-9:分组数据
  • 原文地址:https://www.cnblogs.com/randylee/p/742054.html
Copyright © 2011-2022 走看看