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

📄 menu.c

📁 这里面有UCGUI的源码。对UCGUI介绍比较详细
💻 C
字号:
/*
微型嵌入式GUI - 应用开发

Website: www.ecurb2006.com

演示如何创建对象,使用菜单,多选框和对话窗口

*/

#include "gui.h"
MENU mymenu[]={
{1,"aaaa",0,0},
{1,"aaaa",0,0},
{1,"aaaa",0,0}
};
typedef struct _MyData
{
HAND a;
HAND menu;
}MyData,*PMyData;

USER_PRO MyWin(HAND hd,MESSAGE msg)
{
if(msg.type == GM_SYSTEM)
switch(msg.message)
{
case GM_Create:
   {
   PMyData md;
   int i;
   md=(PMyData)Gmalloc(sizeof(MyData),"");
   CreateObject(hd,BUTTON,1,1,"Create Dialog",10,40,150,100,0,0); /* 创建按钮 */
   md->a=CreateObject(hd,CHECKBOX,1,1,"Hello",10,120,100,140,0,0);/* 创建多选框 */
   md->menu=CreateObject(hd,MAINMENU,1,1,"Menu",160,40,220,60,0,0);/* 创建对话窗口 */
   for (i=0;i<3 ;i++ )
   efMainMenu->Add(md->menu,&mymenu[i]);/* 添加菜单子项 */
   SetObjVar(hd,(HAND)md);
   }
    return;
default:return;
}
if(msg.type == GM_COMMAND)
switch(msg.message)
{
case 1:
   {
   PMyData md;
   md=(PMyData)GetObjVar(hd);
   if(!md) return;
   if(efCheckBox->Get(md->a)) /* 获得多选框状态 */
   efDialogWin->Start(hd,0,0,"选择了!",50,50,200,200,0,0); /* 启动对话窗口 */
   else efDialogWin->Start(hd,0,0,"没选择!",50,50,200,200,0,0);
   }
   return;
default:return;
} 
}

int gmain(void*data)
{
CreateObject(0,MAINWINDOW,1,1,"Hello,World",10,10,400,400,MyWin,0);
return 0;
}

⌨️ 快捷键说明

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