当前位置:  技术问答>java相关

这样的方法怎么写?送500分

    来源: 互联网  发布时间:2015-04-25

    本文导语:  各位:     我想写着这样的两个方法,请问怎么能实现:     public static void makeTopMenu(菜单名称,菜单字符串,菜单快捷键)     public static void makesubMenu(上级菜单名,本菜单名,菜单字符串,菜单快捷键,菜...

各位:
    我想写着这样的两个方法,请问怎么能实现:
    public static void makeTopMenu(菜单名称,菜单字符串,菜单快捷键)
    public static void makesubMenu(上级菜单名,本菜单名,菜单字符串,菜单快捷键,菜单图标)
    比如:makeTopMenu(filemenu,"File",null)
          makesubMenu(filemenu,newfile,"New",null,null)
   我想在Frame中直接调用这两个方法就能实现菜单的建立
   请问各位高手,怎么实现这样一个方法?

|
真给分吗?呵呵,每个菜单以菜单名作为Action_Command,不能重复,作为查找的索引。
-------------------------------------------
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
class Test extends JFrame{
static JMenu target=null;
//添加Menu,包括快捷键
    public static void makeMenu(JFrame frame,String parentMenuName,String menuString,int shortCut,Icon icon){
     target=null;
     if(parentMenuName==null){
     frame.getJMenuBar().add(new MyMenu(new MyAction(menuString),menuString,shortCut,icon));
     return;
     }
     iteratorMenu(frame.getJMenuBar(),parentMenuName);
     if(target!=null)
     ((JMenu)target).add(new MyMenu(new MyAction(menuString),menuString,shortCut,icon));
    }
    //添加Menu
    public static void makeMenu(JFrame frame,String parentMenuName,String menuString,Icon icon){
     target=null;
     if(parentMenuName==null){
     frame.getJMenuBar().add(new MyMenu(new MyAction(menuString),menuString,icon));
     return;
     }
     iteratorMenu(frame.getJMenuBar(),parentMenuName);
     if(target!=null)
     ((JMenu)target).add(new MyMenu(new MyAction(menuString),menuString,icon));
    }
    //添加MenuItem
    public static void makeMenuItem(JFrame frame,String parentMenuName,String menuItemString,KeyStroke shortCut,Icon icon){
     target=null;
     if(parentMenuName==null){
     return;
     }
     iteratorMenu(frame.getJMenuBar(),parentMenuName);
     if(target!=null)
     ((JMenu)target).add(new MyMenuItem(new MyAction(menuItemString),menuItemString,shortCut,icon));
    }
    //查找匹配Menu
    public static void iteratorMenu(MenuElement menu,String menuName){
     MenuElement[] menuElements=null;
      if(menu instanceof JMenu&&((JMenu)menu).getActionCommand().equals(menuName)){
       target=(JMenu)menu;
       return;}
      if((menuElements=menu.getSubElements()).length>0){
       for(int i=0;i

    
 
 

您可能感兴趣的文章:

  • java命名空间javax.security.auth.x500类x500privatecredential的类成员方法: x500privatecredential定义及介绍
  • Apache上传文件500错误的解决方法
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: x500principal定义及介绍
  • 有偿求关于uclinux下支持大硬盘的方法,希望接触过500GB硬盘的请进
  • java命名空间javax.security.auth.x500类x500privatecredential的类成员方法: getprivatekey定义及介绍
  • iis8.5显示ASP的详细错误信息500 内部服务器错误解决方法
  • java命名空间javax.security.auth.x500类x500privatecredential的类成员方法: getalias定义及介绍
  • 有没有好方法处理500个表单?
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: tostring定义及介绍
  • 500分求redhat9.0拨号上网方法
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: rfc2253定义及介绍
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: rfc1779定义及介绍
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: getencoded定义及介绍
  • java命名空间javax.security.auth.x500类x500privatecredential的类成员方法: destroy定义及介绍
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: hashcode定义及介绍
  • java命名空间javax.security.auth.x500类x500privatecredential的类成员方法: isdestroyed定义及介绍
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: equals定义及介绍
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: canonical定义及介绍
  • java命名空间javax.security.auth.x500类x500principal的类成员方法: getname定义及介绍
  • java命名空间java.security.cert类x509certificate的类成员方法: getsubjectx500principal定义及介绍
  • java命名空间java.security.cert类x509certificate的类成员方法: getissuerx500principal定义及介绍
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间java.awt.im类inputcontext的类成员方法: getinputmethodcontrolobject定义及介绍
  • 实现在同一方法中获取当前方法中新赋值的session值解决方法
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: getcontrolobject定义及介绍
  • 突然想到一个奇怪的问题:如果一个非abstract类中包含一个空方法体(及非Java代码写的方法体是空的)的native方法,编译会通过吗?
  • java命名空间java.lang类runtime的类成员方法: runfinalization定义及介绍
  • 构造方法到底怎么用,构造方法体中可以放些什么东西,它和一般方法有什么本质区别功能上
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: dispose定义及介绍
  • jquery中slideUp()方法与slideDown()方法
  • java命名空间javax.swing类rowsorter<m>的类成员方法: allrowschanged定义及介绍
  • jquery中fadeIn()方法与fadeOut()方法(示例)
  • java命名空间java.lang类securitymanager的类成员方法: getsecuritycontext定义及介绍
  • 这句话对不对 用final修饰的方法是不能被该类的子类所重载的方法 ?
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: hidewindows定义及介绍
  • finalize()方法与System.runFinalization()方法有什么区别
  • java命名空间java.beans类statement的类成员方法: execute定义及介绍
  • 关于“创建重载现存方法的方法”
  • java命名空间java.lang类stacktraceelement的类成员方法: getmethodname定义及介绍
  • 关于多线程的奇怪问题,run()方法只会被start()方法自动启动一次吗?
  • java命名空间java.awt.im.spi接口inputmethod的类成员方法: activate定义及介绍
  • append()方法在哪些类里有啊?分别有什么作用?老是看到这个方法
  • java命名空间javax.swing类jcomponent的类成员方法: processcomponentkeyevent定义及介绍
  • servlet的service()方法与doGet()、doPost()方法是什么关系?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3