java – 如何将JTextField添加到JFrame的MenuBar?

前端之家收集整理的这篇文章主要介绍了java – 如何将JTextField添加到JFrame的MenuBar?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在尝试重载JMenu并放入一些自定义代码支持JTextField,但是这并不顺利.我的主要目的是在菜单项的右侧添加一个搜索字段.所以我有一些文件,编辑,左边的帮助,然后在右边将是搜索栏,几乎像一些谷歌搜索栏在一些浏览器.有人有一个想法,我可以如何添加这个功能

解决方法

我从来没有看到像JMenuItem,我认为alyways放在JMenuBar中
import java.awt.ComponentOrientation;
import javax.swing.*;

public class MenuGlueDemo {

    public MenuGlueDemo() {
        JMenuBar menuBar = new JMenuBar();
        menuBar.add(createMenu("Menu 1"));
        menuBar.add(createMenu("Menu 2"));
        menuBar.add(createMenu("Menu 3"));
        menuBar.add(new JSeparator());
        menuBar.add(new JButton("   Seach ....  "));
        menuBar.add(new JTextField("   Seach ....  "));
        menuBar.add(new JComboBox(new Object[]{"height","length","volume"}));
        menuBar.add(Box.createHorizontalGlue());
        menuBar.add(createMenu("About"));
        JFrame frame = new JFrame("MenuGlueDemo");
        frame.setDefaultCloSEOperation(JFrame.EXIT_ON_CLOSE);
        frame.add(menuBar);
        frame.pack();
        frame.setVisible(true);
    }

    public JMenu createMenu(String title) {
        JMenu m = new JMenu(title);
        m.add("Menu item #1 in " + title);
        m.add("Menu item #2 in " + title);
        m.add("Menu item #3 in " + title);
        if (title.equals("About")) {
            m.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
        }
        return m;
    }

    public static void main(String[] args) {
        javax.swing.SwingUtilities.invokeLater(new Runnable() {

            @Override
            public void run() {
                MenuGlueDemo menuGlueDemo = new MenuGlueDemo();
            }
        });
    }
}
原文链接:https://www.f2er.com/java/124860.html

猜你在找的Java相关文章