gpt4 book ai didi

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

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:07:28 24 4
gpt4 key购买 nike

我一直在尝试重载 JMenu 并放入一些自定义代码来支持 JTextField,但这并不顺利。我在这里的主要目的是在我的菜单项右侧添加一个搜索字段。所以我在左边有文件、编辑、帮助之类的东西,然后右边是搜索栏,几乎就像某些浏览器中的谷歌搜索栏一样。有谁知道我该如何添加此功能?

最佳答案

我从未将其视为 JMenuItem,我认为它总是放在 JMenuBar

enter image description here

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();
}
});
}
}

关于java - 如何将 JTextField 添加到 JFrame 的 MenuBar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8126693/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com