⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 menu.c

📁 minigui实例源代码
💻 C
字号:
#include <minigui/common.h>#include <minigui/minigui.h>#include <minigui/gdi.h>#include <minigui/window.h>#include <minigui/control.h>#define  IDM_FILE	2010#define  IDM_EXIT	2011  #define  IDM_HELP	2020#define  IDM_ABOUT	2021HWND hMainWnd;static HMENU  CreatFileMenu(void){   HMENU  hmenu;    MENUITEMINFO mii;     /* define the "File" menu is PopupMenu, and get the PopupMenu point */    memset(&mii, 0, sizeof(MENUITEMINFO));	 /* init mii to 0 */    mii.type = MFT_STRING;    mii.id = 0;     mii.typedata = (DWORD)"File";    hmenu = CreatePopupMenu(&mii);    /* creat the "Exit" */    memset(&mii, 0, sizeof(MENUITEMINFO));	     mii.type = MFT_STRING;    mii.state = 0;    mii.id = IDM_EXIT;    mii.typedata = (DWORD)"Exit";    InsertMenuItem(hmenu, 0, TRUE, &mii);    return(StripPopupHead(hmenu));}static HMENU  CreatAboutMenu(void){   HMENU  hmenu;    MENUITEMINFO mii;     /* define the "Help" menu is PopupMenu, and get the PopupMenu point */    memset(&mii, 0, sizeof(MENUITEMINFO));	 /* init mii to 0 */    mii.type = MFT_STRING;    mii.id = 0;    mii.typedata = (DWORD)"Help";    hmenu = CreatePopupMenu(&mii);    /* creat the "About" */    memset(&mii, 0, sizeof(MENUITEMINFO));	     mii.type = MFT_STRING;    mii.state = 0;    mii.id = IDM_ABOUT;    mii.typedata = (DWORD)"About";    InsertMenuItem(hmenu, 0, TRUE, &mii);    return(StripPopupHead(hmenu));}static HMENU  CreateMainMenu(void){   HMENU  hmenu;    MENUITEMINFO mii;     hmenu = CreateMenu();    /* creat "File" menu */    memset(&mii, 0, sizeof(MENUITEMINFO));	 /* init mii to 0 */    mii.type = MFT_STRING;    mii.id = IDM_FILE;    mii.typedata = (DWORD)"File...";    mii.hsubmenu = CreatFileMenu();		/* creat the sub menu */	    InsertMenuItem(hmenu, 0, TRUE, &mii);    /* creat "Help" menu */    memset(&mii, 0, sizeof(MENUITEMINFO));	     mii.type = MFT_STRING;    mii.id = IDM_HELP;    mii.typedata = (DWORD)"Help...";    mii.hsubmenu = CreatAboutMenu();    InsertMenuItem(hmenu, 1, TRUE, &mii);     return(hmenu);}static int  WinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam){   HDC  hdc;    switch(message)    {  case MSG_PAINT:	  hdc = BeginPaint(hWnd);	  TextOut(hdc, 150, 200, "This is MiniGUI Window!");	  EndPaint(hWnd, hdc);	  break;       case MSG_CLOSE:	  DestroyMainWindow(hWnd);	  PostQuitMessage(hWnd);	  break;       case MSG_COMMAND:          switch(wParam)          {   case IDM_EXIT:                 DestroyMainWindow(hWnd);                 PostQuitMessage(hWnd);                 break;              case IDM_ABOUT:                 MessageBox(hWnd, "Menu demo V1.0", "About", MB_OK);                 break;          }          break;       default:	  return(DefaultMainWinProc(hWnd, message, wParam, lParam));    }    return(0);}int InitMainWindow(void){   MAINWINCREATE  window_info;    window_info.dwStyle = WS_VISIBLE | WS_BORDER | WS_CAPTION;    window_info.dwExStyle = WS_EX_NONE;    window_info.spCaption = "Menu demo";    window_info.hMenu = CreateMainMenu();    window_info.hCursor = GetSystemCursor(0);    window_info.hIcon = 0;    window_info.MainWindowProc = WinProc;    window_info.lx = 0;    window_info.ty = 0;    window_info.rx = 640;    window_info.by = 480;    window_info.iBkColor = COLOR_lightwhite;    window_info.dwAddData = 0;    window_info.hHosting = HWND_DESKTOP;         hMainWnd = CreateMainWindow (&window_info);    if (hMainWnd == HWND_INVALID) return(0);      else  return(1);}int  MiniGUIMain(int argc, const char *argv[]){   MSG Msg;#ifdef _LITE_VERSION    SetDesktopRect(0,0, 800,600);#endif    InitMainWindow();    ShowWindow(hMainWnd, SW_SHOWNORMAL);    while (GetMessage(&Msg, hMainWnd))     {   TranslateMessage(&Msg);        DispatchMessage(&Msg);    }        MainWindowThreadCleanup (hMainWnd);    return(0);}#ifndef _LITE_VERSION	#include <minigui/dti.c>#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -