精华内容
下载资源
问答
  • 网页制作 网页下拉菜单HTML+CSS制作

    千次阅读 多人点赞 2020-06-02 18:29:56
    网页下拉菜单制作(图片如下)制作用到的images 二级菜单 一、 caidan.html 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>基于div+css技术的下拉...

    基于div+css技术的下拉菜单制作

    任务要求:

    网页下拉菜单制作(图片如下)制作用到的images
    在这里插入图片描述
    二级菜单
    在这里插入图片描述

    一、 caidan.html 代码如下:

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="utf-8">
    		<title>基于div+css技术的下拉菜单制作</title>
    		<link rel="stylesheet" type="text/css" href="css/style.css" />
    	</head>
    	<body>
    		<div id="wrap">
    			<header>
    				<img src="images/head.jpg" />
    			</header>
    			<nav id="menu">
    				<ul>
    					<li><a href="#">本站首页</a></li>
    					<li><a href="#">本院概况</a>
    						<ul>
    							<li><a href="#">本院介绍</a></li>
    							<li><a href="#">学院领导</a></li>
    							<li><a href="#">教学成果</a></li>
    						</ul>
    					</li>
    					<li><a href="#">师资队伍</a>
    						<ul>
    							<li><a href="#">计算机教研室</a></li>
    							<li><a href="#">英语教研室</a></li>
    							<li><a href="#">体育教研室</a></li>
    							<li><a href="#">综合教研室</a></li>
    						</ul>
    					</li>
    					<li><a href="#">教务管理</a></li>
    					<li><a href="#">党政建设</a></li>
    					<li><a href="#">学校首页</a></li>
    				</ul>
    			</nav>
    			<div id="banner">
    				<img src="images/banner.jpg" />
    			</div>
    		</div>
    	</body>
    </html>
    

    二、style.css 代码

    @charset "utf-8";
    *{
    	margin: 0px;
    	padding: 0px;
    }
    ul{
    	list-style-type: none;
    }
    a{
    	text-decoration: none;
    }
    body{
    	background-image: url(../images/index_bg2.jpg);
    	background-repeat: repeat-x;
    }
    #wrap{
    	width: 1070px;
    	margin: 0px auto;
    	border: 1px solid #009966;
    }
    #menu ul li{
    	float: left;
    	position: relative;
    }
    #menu{
    	width: 925px;
    	height: 37px;
    	background-image: url(../images/menu_bg.jpg);
    	padding-left: 145px;
    }
    #menu ul li a{
    	display: block;
    	width: 80px;
    	height: 37px;
    	line-height: 37px;
    	text-align: center;
    	font-size: 15px;
    	color: #000066;
    	padding: 0px 25px;
    }
    #menu ul li a:hover{
    	background-color: #31859c;
    	color: #ffffff;
    }
    #menu ul li ul li {
    	float: none;
    }
    #menu ul li ul li a{
    	float: none;
    	width: 110px;
    	border-bottom: 1px solid rgba(153,153,102,0.3);
    }
    #menu ul li ul{
    	margin-left: -15px;
    	position: absolute;
    	display: none;
    	border: 1px solid #9d9d9d;
    	background-color: #ebf1de;
    	margin-top: 3px;
    }
    #menu ul li:hover ul{
    	display: block;
    }
    #menu ul li ul li a:hover{
    	background-color: #d7e7bd;
    	color: #000066;
    }
    
    展开全文
  • 制作折叠菜单

    千次阅读 2012-02-08 09:39:47
     listViewDropDownList.Items.Add("老人情况一览", 2);  }  //初始化人事管理下拉菜单  private void createPersonnelMList()  {  listViewDropDownList.Items.Clear();  listViewDropDownList...

    在照抄一个现成的软件界面,人家用VB做的功能树结构,就想在winform里面也做一个相同的,但是希望不是使用treeview实现。

    新手上午,google海量查询,希望能找到合适的实现方式。

    貌似有一些第三方的控件可以实现,而且具有简单易用,效果优良等特点,但是需要破解,没用过第三方控件,也顾忌其稳定性,所以就放弃了

    然后就是用button+panel/listview, 或者是menustrip菜单了。去codeproject里面搜索outlook bar 结果果然有一些比较直观的

    http://www.codeproject.com/Articles/3950/An-Outlook-Bar-Implementation 这个是我自己以为比较好的

    然后在博客园里面和csdn里面的帖子也有了些回复 

    http://www.codeproject.com/Articles/7247/Themed-Windows-XP-style-Explorer-Bar 这个是一位仁兄推荐的

    我找了一个中文(有些懒)的,然后下载了demo,照着里面的样子做了一个,贴出来分享一下了。

    代码如下:

          public MainForm()

          {

           InitializeComponent();

           createSystemInfoList();

           } 

     //在功能折叠菜单中处理功能项按钮按下事件
          private void FunctionButtonClick(object sender, EventArgs e)
          {
              Button clickButton = (Button)sender;
              int clickedButtonTabIndex = clickButton.TabIndex;
              foreach (Control ctl in panelFunctionList.Controls)
              {
                  if (ctl is Button)
                  {
                      Button btn = (Button)ctl;
                      if (btn.TabIndex > clickedButtonTabIndex)
                      {
                          if (btn.Dock != DockStyle.Bottom)
                          {
                              btn.Dock = DockStyle.Bottom;
                              //This is vital to preserve the correct order
                              btn.BringToFront();//控件移到 Z 顺序的前面
                          }
                      }
                      else
                      {
                          if (btn.Dock != DockStyle.Top)
                          {
                              btn.Dock = DockStyle.Top;
                              btn.BringToFront();
                          }
                      }
                  }
              }
              switch (clickButton.Text)
              {
                  case "接待管理":
                      createReceiveMList();
                      break;
                  case "费用管理":
                      createCostMList();
                      break;
                  case "老人管理":
                      createOlderMList();
                      break;
                  case"人事管理":
                      createPersonnelMList();
                      break;
                  case"仓库管理":
                      createStoreMList();
                      break;
                  case"基本信息":
                      createEssentialInfoList();
                      break;
                  case "系统信息":
                      createSystemInfoList();
                      break;
                      
              }
              listViewDropDownList.BringToFront();//Without this, the buttons will hide the items.
          }
          //初始化接待管理下拉菜单
          private void createReceiveMList()
          {
              listViewDropDownList.Items.Clear();
              listViewDropDownList.Name = "ReceiveMList";
              listViewDropDownList.Items.Add("接待登记", 0);
              listViewDropDownList.Items.Add("来访登记", 0);
              listViewDropDownList.Items.Add("查询老人资料", 0);
              listViewDropDownList.Items.Add("查询床位资料", 0);
              listViewDropDownList.Items.Add("查询员工资料", 0); 
          }
          //初始化费用管理下拉菜单
          private void createCostMList()
          {
              listViewDropDownList.Items.Clear();
              listViewDropDownList.Name = "CostMList";
              listViewDropDownList.Items.Add("代收费用", 1);
              listViewDropDownList.Items.Add("交费记录", 1);
              listViewDropDownList.Items.Add("退住登记", 1);
              listViewDropDownList.Items.Add("费用结算", 1);
              listViewDropDownList.Items.Add("财务托管", 1);
          }
          //初始化老人管理下拉菜单
          private void createOlderMList()
          {
              listViewDropDownList.Items.Clear();
              listViewDropDownList.Name = "OlderMList";
              listViewDropDownList.Items.Add("老人档案", 2);
              listViewDropDownList.Items.Add("入住登记", 2);
              listViewDropDownList.Items.Add("床位安排", 2);
              listViewDropDownList.Items.Add("外出登记", 2);
              listViewDropDownList.Items.Add("老人情况一览表", 2);
          }
          //初始化人事管理下拉菜单
          private void createPersonnelMList()
          {
              listViewDropDownList.Items.Clear();
              listViewDropDownList.Name = "PersonnelMList";
              listViewDropDownList.Items.Add("员工信息", 3);
              listViewDropDownList.Items.Add("员工调动", 3);
              listViewDropDownList.Items.Add("员工离职", 3);
              listViewDropDownList.Items.Add("员工请假/加班", 3);
          }
          //初始化仓库管理下拉菜单
          private void createStoreMList()
          {
              listViewDropDownList.Items.Clear();
              listViewDropDownList.Name = "StoreMList";
              listViewDropDownList.Items.Add("货品信息", 4);
              listViewDropDownList.Items.Add("货品入库", 4);
              listViewDropDownList.Items.Add("货品出库", 4);
              listViewDropDownList.Items.Add("货品库存", 4);
          }
          //初始化床位管理下拉菜单
          private void createEssentialInfoList()
          {
              listViewDropDownList.Items.Clear();
              listViewDropDownList.Name = "EssentialMList";
              listViewDropDownList.Items.Add("资费标准", 5);
              listViewDropDownList.Items.Add("楼房资料", 5);
              listViewDropDownList.Items.Add("房间资料", 5);
              listViewDropDownList.Items.Add("床位资料", 5);
          }
          //初始化基本信息下拉菜单
          private void createSystemInfoList()
          {
              listViewDropDownList.Items.Clear();
              listViewDropDownList.Name = "SystemInfoList";
              listViewDropDownList.LargeImageList = imageListForFuncList;
              listViewDropDownList.Items.Add("操作员管理", 6);
              listViewDropDownList.Items.Add("系统日志", 6);
              listViewDropDownList.Items.Add("备份数据库", 6);
              listViewDropDownList.Items.Add("恢复数据库", 6);
              listViewDropDownList.Items.Add("参数配置", 6);
          }
          //单击listview中的Item时触发事件处理
          private void listViewDropDownList_Click_1(object sender, EventArgs e)
          {
              ListView FunctionList = (ListView)sender;
              if (FunctionList.SelectedItems.Count > 0)
              {
                  MessageBox.Show(FunctionList.SelectedItems[0].Text);


              }
          }

    展开全文
  • CSS制作简单的横向菜单

    千次阅读 2015-12-04 15:42:47
    用CSS制作简单的横向菜单

    1.先写一个列表,建立菜单的结构

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><div class="menu">
      <ul>
        <li><a href="#">网站首页</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
      </ul>
    </div></span></span></span>
    2.隐藏标签li的默认样式

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><style>
    .menu ul {list-style-type:none;}
    </style></span></span></span>
    3.使菜单列表横向,需要加入一个非常重要的属性“float:left”,这是菜单横向的关键所在

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><style>
    .menu ul {list-style-type:none;}
    .menu ul li {float:left;}
    </style></span></span></span>
    4.调整外部DIV和菜单标签li的宽度,并且取消链接的下划线,使菜单ul和外部的DIV的边界属性值为0

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><style>
    .menu {width:100%;}
    .menu ul {padding:0px; list-style-type:none;}
    .menu ul li {float:left; width:100px;}
    .menu ul li a {text-decoration:none;}
    </style></span></span></span>

    5.大多数浏览器对于链接样式的字体颜色为蓝色,我们可以设置为自己喜欢的颜色。之后我们可以设置菜单的整体样式,将菜单背景色设置为红色,字体颜色设置为白色,字体大小设为14px,字体类型根据自己的喜好

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><style>
    .menu {width:100%; background:#FF0000; height:35px; font-size:14px; font-family: "微软雅黑";}
    .menu ul {padding:0px; list-style-type:none;}
    .menu ul li {float:left; width:100px; height:35px; line-height:35px;}
    .menu ul li a {text-decoration:none; color:#fff;}
    </style></span></span></span>
    效果图如下:


    可以看出字体没有居中,加入text-align:center使字体居中

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><style>
    .menu {width:100%; background:#FF0000; height:35px; font-size:14px; font-family: "微软雅黑";}
    .menu ul {padding:0px; list-style-type:none;}
    .menu ul li {float:left; width:100px; height:35px; line-height:35px; text-align:center;}
    .menu ul li a {text-decoration:none; color:#fff;}
    </style></span></span></span>
    6.最后,我们所要设置的就是鼠标移入菜单(:hover)、鼠标点击菜单(:active)、鼠标选中菜单(:focus)的样式,这就需要用到CSS的伪类

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><style>
    .menu {width:100%; background:#FF0000; height:35px; font-size:14px; font-family: "微软雅黑";}
    .menu ul {padding:0px; list-style-type:none;}
    .menu ul li {float:left; width:100px; height:35px; line-height:35px; text-align:center;}
    .menu ul li a {text-decoration:none; color:#fff;}
    .menu ul li a:hover {background:#fff; color:#000;}
    .menu ul li a:active {background:#fff; color:#000;}
    .menu ul li a:focus {background:#fff; color:#000;}
    </style></span></span></span>

    效果图如下:


    有木有觉得菜单选中的样式很丑,所以我们需要在标签a的样式表中加入一个重要的属性display:block

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><style>
    .menu {width:100%; background:#FF0000; height:35px; font-size:14px; font-family: "微软雅黑";}
    .menu ul {padding:0px; list-style-type:none;}
    .menu ul li {float:left; width:100px; height:35px; line-height:35px; text-align:center;}
    .menu ul li a {text-decoration:none; color:#fff; display:block;}
    .menu ul li a:hover {background:#fff; color:#000;}
    .menu ul li a:active {background:#fff; color:#000;}
    .menu ul li a:focus {background:#fff; color:#000;}
    </style></span></span></span>
    最终效果如下:


    7.最终的代码

    <span style="font-size:14px;"><span style="font-size:14px;"><span style="font-size:14px;"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title>横向菜单</title>
    <style>
    .menu {width:100%; background:#FF0000; height:35px; font-size:14px; font-family: "微软雅黑";}
    .menu ul {padding:0px; list-style-type:none;}
    .menu ul li {float:left; width:100px; height:35px; line-height:35px; text-align:center;}
    .menu ul li a {text-decoration:none; color:#fff; display:block;}
    .menu ul li a:hover {background:#fff; color:#000;}
    .menu ul li a:active {background:#fff; color:#000;}
    .menu ul li a:focus {background:#fff; color:#000;}
    </style>
    </head>
    <body>
    <div class="menu">
      <ul>
        <li><a href="#">网站首页</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
        <li><a href="#">一级菜单</a></li>
      </ul>
    </div>
    </body>
    </html></span></span></span>
    展开全文
  • 基于链表的多级菜单设计

    千次阅读 2020-04-19 17:19:17
    最近在做一个简单的界面,需要用到多级菜单,一开始使用的是传统的索引法,在修改时比较乱,在网上有用链表写的,虽然一致都在用c语言,却很少使用链表,于是今天早上便打算用链表制作一个多级菜单,经过一天的努力...

    基于链表的多级菜单设计

    前言

    最近在做一个简单的界面,需要用到多级菜单,一开始使用的是传统的索引法,在修改时比较乱,在网上有用链表写的,虽然一致都在用c语言,却很少使用链表,于是今天早上便打算用链表制作一个多级菜单,经过一天的努力,终于完成了一个简单的框架,现在只可以添加菜单,而且没有级数限制。 目前只是在gcc下运行成功,还没有在单片机上运行。

    主体

    传统的双向链表可以寻找上下级的关系,而在多级菜单中还包括同级关系,因此链表的解构应该是树形,包括,父级,子级,同级上和同级下
    这里定义一个结构体

    typedef struct _menu
    {
        struct _menu * last;//父极菜单指针
        struct _menu * same_last;//同级菜单下一项指针
        struct _menu * same_next;//同级菜单上一项指针
        char * menu_name;//当前功能名称
        int id;//当前功能号
        void (*funsion)();//功能
        struct _menu*next;//子级菜单
      
    }menu_t;
    

    这里,我们还需要几个变量
    1.我们需要知道链表当前位置
    2.通过按键上下可以在同级之间切换,左右分别表示退出和返回,但是如果我们进入一个界面不想通过上下左右切换链表,所以我们还需要一个全局变量,当这个变量为1时是正常操作,当变量为非1时,我们将获取的按键值交给一个全局变量,故我们需要两个变量

    struct {
    menu_t *now;//当前链表位置
    int ctrl;
    char input;
    }sys_info;
    

    接下来便是创建表头

    menu_t*add_funsion(menu_t *head,void * fun,char * str){    //添加一个功能 head为该界面的第一项,自动在该界面后添加一项功能
    	menu_t *p = NULL,*pr = head;  
    	p = (menu_t *)malloc(sizeof(menu_t)) ; 
    	if(p == NULL){		
    		printf("NO enough momery to allocate!\n");
    		exit(0);
    	}
    	if(head == NULL){		
    		head = p;	//head为空,创建头节点	
            printf("创建头节点\n");						
    	}else{				//如果不是创建头节点	
            int i=1;					                       
    		while(pr->same_next!= NULL){		//找到同级菜单最后的表
            {
                i++;
                pr = pr->same_next;
            }
    			
    		}
    		pr->same_next = p;	//在同级菜单尾部创建一个功能
            p->same_last=pr;
            p->last=head->last;
            p->id=i;
    	}
         p->funsion=fun;
    	 p->menu_name=str;
    	p->same_next = NULL;//下一个同级功能为空
        p->next=NULL;			//下一个子集功能为空
    	return head;		
    }
    

    上面的函数中如果head是一个空指针,则创建头节点,如果不是空指针,则在其同级最后添加一个结构
    然后是在一个目录功能下新建一个目录

    menu_t * set_page(menu_t * head,int num)//输入为页的表头
    {
        for(int i=0;i<num;i++)
        {
            if(head->same_next!=NULL)
            head=head->same_next;
            else
            {
                printf("超出当前功能号\n");
            }
            
        }
         if(head->next!=NULL)
        head=head->next;
        else
        {
    
            printf("创建子菜单\n");
        menu_t *p = NULL;   
    	p = (menu_t *)malloc(sizeof(menu_t)) ; 
    	if(p == NULL){		
    		printf("NO enough momery to allocate!\n");
    		exit(0);
    	}
    								                       
    		head->next=p;
            p->last=head;
            p->id=0;//当前功能号为0
            p->same_last=NULL;
            p->same_next=NULL;
            return p;
        }
        
        return head;
    }
    

    第一个head指针为当前目录真正,第二个num代表要在当前目录那一项创建子级,并将创建子级的指针返回,但是,需要注意的是返回的指针已经开辟了内存,并没有使用,因此需要对此指针内容进行赋值

    void set_fun(menu_t *menu,void * fun,char * str)//设置函数和功能
    {
            menu->funsion=fun;
            menu->menu_name=str;
    }
    

    至此主要函数就已经写完了
    然后就是进入目录时的刷新

    void fun1()
    {
       printf("%s","\033[1H\033[2J");//linux下的清屏函数,window下请用system("cls");
        printf("使用键盘选择以下功能\n");
        if(sys_info.now->last!=NULL)//如果父极不为空
        {
            menu_t * start=sys_info.now->last->next;//start指向同级第一个
            while(start!=NULL)//将所有功能打在屏幕上,如果功能和选中功能一样,变色
            {
                
                if(start->menu_name==sys_info.now->menu_name)//
                {
                    printf("********%s*********\n",start->menu_name);
                }
                else
                {
                    printf("    ****%s****\n",start->menu_name);
                }
                start=start->same_next;
    
            }
        }
        else
        {
            printf("父极为空");
        }
    
    
    }
    

    由于是在linux下写完,清屏函数在window下需要system
    下面是完整代码

    #include <stdio.h>
    #include <stdlib.h>
    typedef struct _menu
    {
        struct _menu * last;//父极菜单指针
        struct _menu * same_last;//同级菜单下一项指针
        struct _menu * same_next;//同级菜单上一项指针
        char * menu_name;//当前功能名称
        int id;//当前功能号
        void (*funsion)();//功能
        struct _menu*next;//子级菜单
      
    }menu_t;
    
    struct {
    menu_t *now;//当前链表位置
    int ctrl;
    char input;
    }sys_info;
    
    menu_t * set_page(menu_t * head,int num)//输入为页的表头
    {
        for(int i=0;i<num;i++)
        {
            if(head->same_next!=NULL)
            head=head->same_next;
            else
            {
                printf("超出当前功能号\n");
            }
            
        }
         if(head->next!=NULL)
        head=head->next;
        else
        {
    
            printf("创建子菜单\n");
        menu_t *p = NULL;   
    	p = (menu_t *)malloc(sizeof(menu_t)) ; 
    	if(p == NULL){		
    		printf("NO enough momery to allocate!\n");
    		exit(0);
    	}
    								                       
    		head->next=p;
            p->last=head;
            p->id=0;//当前功能号为0
            p->same_last=NULL;
            p->same_next=NULL;
            return p;
        }
        
        return head;
    }
    
    menu_t*add_funsion(menu_t *head,void * fun,char * str){    //添加一个功能 head为该界面的第一项,自动在该界面后添加一项功能
    	menu_t *p = NULL,*pr = head;   
        
    	p = (menu_t *)malloc(sizeof(menu_t)) ; 
    	if(p == NULL){		
    		printf("NO enough momery to allocate!\n");
    		exit(0);
    	}
    	if(head == NULL){		
    		head = p;	//head为空,创建头节点	
            printf("创建头节点\n");						
    	}else{				//如果不是创建头节点	
            int i=1;					                       
    		while(pr->same_next!= NULL){		//找到同级菜单最后的表
            {
                i++;
                pr = pr->same_next;
            }
    			
    		}
    		pr->same_next = p;	//在同级菜单尾部创建一个功能
            p->same_last=pr;
            p->last=head->last;
           
           
            p->id=i;
    	}
         p->funsion=fun;
    	 p->menu_name=str;
    	p->same_next = NULL;//下一个同级功能为空
        p->next=NULL;			//下一个子集功能为空
    	return head;		
    }
     menu_t * add_child(menu_t *head)//添加子级
    {
        	menu_t *p = NULL;   
    	p = (menu_t *)malloc(sizeof(menu_t)) ; 
    	if(p == NULL){		
    		printf("NO enough momery to allocate!\n");
    		exit(0);
    	}
    	if(head == NULL){		
    		printf("输入head错误,添加子级失败\n");							
    	}else{										                       
    		head->next=p;
            p->last=head;
            p->same_last=NULL;
            p->same_next=NULL;
    	}
        return p;
    }
    void fun1()
    {
       printf("%s","\033[1H\033[2J");//linux下的清屏函数,window下请用system("cls");
        printf("使用键盘选择以下功能\n");
        if(sys_info.now->last!=NULL)//如果父极不为空
        {
            menu_t * start=sys_info.now->last->next;//start指向同级第一个
            while(start!=NULL)//将所有功能打在屏幕上,如果功能和选中功能一样,变色
            {
                
                if(start->menu_name==sys_info.now->menu_name)//
                {
                    printf("********%s*********\n",start->menu_name);
                }
                else
                {
                    printf("    ****%s****\n",start->menu_name);
                }
                start=start->same_next;
    
            }
        }
        else
        {
            printf("父极为空");
        }
    
    
    }
    void kong()//空函数
    {
        printf("%s","\033[1H\033[2J");//linux下的清屏函数,window下请用system("cls");
        printf("***多级菜单显示****");
    }
    void set_fun(menu_t *menu,void * fun,char * str)//设置函数和功能
    {
            menu->funsion=fun;
            menu->menu_name=str;
    }
    void switch_input()//判断输入
    {
      
    
        scanf("%c", & sys_info.input);//把a仍给系统,交给对应函数处理
        if (sys_info.ctrl)//按键控制链表
        {
            switch (sys_info.input)
        {
         case 'w'://if(sys_info.now->same_last!=NULL)
         sys_info.now=sys_info.now->same_last;
         
            break;
             case 's'://if(sys_info.now->same_next!=NULL)
             sys_info.now=sys_info.now->same_next;
          
            break;
             case 'a':// 左相当于返回
             if(sys_info.now->last!=NULL)
             sys_info.now=sys_info.now->last;
         
            break;
             case 'd'://右相当于确认
         if(sys_info.now->next!=NULL)
             sys_info.now=sys_info.now->next;
            break;
        
        default:
            break;
        }
            sys_info.now->funsion();
        }
    }
    void main()
    {
        sys_info.ctrl=1;
    
        menu_t *head=NULL;
        head=add_funsion(head,kong,"添加头节点");//添加头节点
    
         menu_t *first=set_page(head,0);//主页面
        set_fun(first,fun1,"第一页选项一");
       add_funsion(first,fun1,"第一页选项二");
        add_funsion(first,fun1,"第一页选项三");
    
    
        menu_t *second=set_page(first,0);//第一个功能的页面 二级菜单
        set_fun(second,fun1,"选项一的选项一");
        add_funsion(second,fun1,"选项一的选项二");
        add_funsion(second,fun1,"选项一的选项三");
        sys_info.now=first;
    
        menu_t *three=set_page(first,1);//第一个功能的页面 二级菜单
        set_fun(three,fun1,"选项二的选项一");
        add_funsion(three,fun1,"选项二的选项二");
        add_funsion(three,fun1,"选项二的选项三");
    
        menu_t *four=set_page(second,0);//第一个功能的页面的第一个页面  三级菜单
        set_fun(four,fun1,"选项一的选项一的选项一");
        add_funsion(four,fun1,"选项一的选项一选项二");
        add_funsion(four,fun1,"选项一的选项一选项三");
        fun1();
        sys_info.now=first;
        while(1)
        {
            switch_input();
        }
    
    }
    
    
    展开全文
  • 从用于移动设备的汉堡菜单到用于商店的大型菜单 ,再到用于增强用户体验的便利菜单 ,您可以在WordPress网站中呈现导航菜单的方式有多种选择。 但是,如果您想创建一个简单的菜单,其中包含一些顶级项目,当用户...
  • Excel多级下拉菜单制作

    千次阅读 2019-02-25 16:31:28
    编辑Excel表格的时候,有一类数据是相对固定的,比如说性别或者行政区划,如果数据量很大的话,每一项都手动输入就比较浪费时间而且容易出错,这时...制作学生成绩下拉列表,年级从一到六年级,学生学科有语文、...
  • 请问JeeCMS如何制作多级菜单下拉列表??急!!!求大神们帮帮忙,小弟万分感激!
  • HTML+CSS制作二级菜单

    千次阅读 多人点赞 2019-12-24 15:41:15
    今天我们来练习一下二级菜单栏,说实话比较简单,但是自己一个人写的时候错误百出,逻辑混乱,于是乎网上找了几个案例,借鉴了一下思路,才整明白,鄙人确实不才,哈哈! 效果图附上: 首先:我已链接了外部...
  • 基于CSS3动画技术制作响应式放大菜单,当鼠标悬浮于菜单选项上时产生对该菜单进行放大的动画效果。
  • Abap下拉菜单制作

    千次阅读 2009-03-02 10:52:00
    abap制作下拉菜单即listbox用代码写的话非常方便。网上找了一段代码 REPORT ZTEST_LISTBOX. TYPE-POOLS: VRM. DATA: LNAME TYPE VRM_ID, ILIST TYPE VRM_VALUES, "ITAB LILIST LIKE LINE OF ILIST. DATA: PS_T
  • VBA CAD 菜单制作攻略

    千次阅读 2013-12-17 21:51:19
    这个dvb文件中包含,菜单建立功能,例如: Public Sub SetupMenu() Dim currMenuGroup As AcadMenuGroup Set currMenuGroup = ThisDrawing.Application.MenuGroups.Item(0) '创建新的菜单 Dim newMe
  • 制作价目的软件

    千次阅读 2018-12-19 08:49:35
    快速制作属于自己的价目。 1. 关注“街寻”公众号快速制作自己的个性价目,可以快速对价目进行分享和进行二维码打印。     2. 打开公众号,并点击底部“价目制作菜单,便可以启动价目制作小程序。  ...
  • Excel - 数据验证 - 制作下拉菜单

    千次阅读 2015-12-25 16:54:52
    环境office2013设置 找一个单独的页来充当数据源...点击来源 后面的小数据icon后,按如下步骤:选择下拉菜单 sheet页。 框选A2 - A13。 点 × ,然后点确定,完成! 清除 鼠标选中有数据验证的列或表格,选择数据验
  • 列表菜单制作 示例代码 &amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &amp;lt;meta charset=&quot;UTF-8&quot;&amp;gt; &...
  • ASP二级联动菜单制作

    千次阅读 2016-06-02 12:59:32
    一个简单的二级联动菜单制作。用来点击省后显示相应的县市。  具体做法如下:  1.设计数据库   我们选用sql2000数据库。先建个数据库或者用已经有的数据库。然后在数据库中建立两个分别为province、city。...
  • 像人人等软件一样的侧边菜单,要用SideMenu等类 https://github.com/dmitry-zaitsev/AndroidSideMenu 这个项目不错的,大家可以看看,代码很清晰完整
  • Qt菜单栏的制作

    千次阅读 2012-08-07 12:47:49
    窗口的中菜单栏,工具条,状态栏等都是在QMainWindow的类中设置的,QMainWindow继承了了QWidget类。 如果想要在窗口中加入菜单栏,工具条等,就要定义一个继承QMainWindow的类。 #include #include #include ...
  • extjs制作树形菜单

    千次阅读 2009-05-31 14:32:00
    这个示例实现了有复选框的树形菜单,这个菜单的核心代码是我以前在网上无意中发现的,还好今天派上了用场。本例中不仅仅实现了复选框的树形菜单,而且使得在选中某个节点时,如果有子节点,那么就能够将所有的字节点...
  • xcelsius动态标签菜单制作

    千次阅读 2010-12-20 17:56:00
    之前没发现菜单标签按钮还可以有这样的效果,就像javascript做出来的效果一样.web前端的东西也是浩如烟海啊. 首先可以看下效果图,http://myxcelsius.com/wp-content/uploads/2010/12/fly_menu.swf当鼠标滑过时...
  • Joomla模板制作教程:菜单

    千次阅读 2010-06-22 14:37:00
    模块被发布后,我们可以在系统后台这个菜单模块的设置里面控制其输出样式. 当你建立了一个模块,系统会给你下面的提示告诉你将有一个相同名称的模块被建立. New Menu Created 在这个菜单相关的模块里,...
  • 使用名称管理器和index()函数实现数据动态选择,本例中的数据为1-6月份工作时间分配,主要包括测试执行,自我学习,会议和其他三类数据。 使用下拉菜单动态选择月份:   制作步骤: 1.选择标题栏和1月份...
  • MATLAB制作GUI(2)-菜单切换功能

    千次阅读 热门讨论 2019-02-19 22:42:22
    在第一篇中我们已经介绍了基本GUI的制作方法,下面我将介绍可以实现两个菜单之间切换地GUI。 首先,在命令行通过guide函数进行创建界面,选取blank模板,进入GUI编辑模板: 之后进入工具栏中的菜单编辑器: ...
  • CSS实现菜单制作,鼠标经过变色

    千次阅读 2014-04-09 21:17:08
    CSS实现菜单制作,鼠标经过变色
  • div+css 制作横向导航菜单

    万次阅读 多人点赞 2014-05-19 12:44:59
     前三节课,我们知道了什么是“块状元素和内联元素”,以及xHTML+CSS布局的核心概念“盒子模型”,同时又学习了一下页面布局中两种方法中的一种方法“浮动”,这次我们就利用这三个概念,来制作一款经典的导航条,...
  • 当我们在使用一款软件或者使用某某管理系统的时候,都会使用到分级菜单来给我们清晰的展示出其功能模块。...1、菜单表create table menu( menu_id number(10) primary key, menu_name varchar(...
  • EXCEL中制作二级下拉菜单的方法

    千次阅读 2010-04-08 10:43:00
    制作一级菜单:以选择性别为例,制作有男、女选项的下拉菜单:选中“性别”数据区域;执行“数据/有效性”命令,打开“数据有效性”对话框;单击“设置”选项卡,在“允许”栏选择“序列”,“来源”中输入“男,女...
  • 我们有丰富的价目模版,提供价目表制作方法,提供价目表制作软件,制作商品价目制作美食价目,商家商品价目表制作,二维码制作。可以关注“街寻”公众号开启制作价目之旅;      ...
  • 功能说明: 通过使用ListView制作一个水果选择菜单菜单中有多种水果,菜单每种水果以水果选择框, 水果图片, 水果名称的形式展现在ListView中的每个Item中。1. 通过水果多选框可以选择想要的水果。 2. 通过点击...
  • 添加右键菜单 添加右键菜单的原理很简单,通过TOCControl控件的OnMouseDown事件获取鼠标的点击位置,然后在该位置上显示右键菜单即可 具体操作如下 private void axTOCControl1_OnMouseDown(object sender, ...
  • 菜单内容放进动态面板,鼠标右击,把动态面板固定在浏览器顶端,然后根据需要设置居中的值

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,484
精华内容 19,393
关键字:

如何制作菜单表