Java JMenuBar不是';他没有出现
你们有人知道为什么我的JMenuBarJava JMenuBar不是';他没有出现,java,swing,jmenubar,Java,Swing,Jmenubar,你们有人知道为什么我的JMenuBar菜单栏没有出现吗? 我使用的是JFrame和JPanel 我的类扩展了JPanel,并继承了paint方法(已经使用了super.paint(g)) 我想在我的JMenuBar上显示一些jlabel和JTextFields(我知道这不是它的目的) 这是我的密码: public void createMenuBar(){ menuBar = new JMenuBar(); menuBar.setBounds(0,0,1463,29);
菜单栏没有出现吗?
我使用的是JFrame
和JPanel
我的类扩展了JPanel
,并继承了paint
方法(已经使用了super.paint(g)
)
我想在我的JMenuBar
上显示一些jlabel
和JTextFields
(我知道这不是它的目的)
这是我的密码:
public void createMenuBar(){
menuBar = new JMenuBar();
menuBar.setBounds(0,0,1463,29);
menuBar.setLayout(null);
this.add(menuBar);
ipLbl = new JLabel("IP-Adresse:");
ipLbl.setBounds(5,2,150,25);
ipLbl.setLabelFor(ip);
menuBar.add(ipLbl);
ip = new JTextField();
ip.setBounds(150,2,100,25);
menuBar.add(ip);
}
我在创建JFrame之后调用此方法,但就在执行setVisible(true)
之前
看:
创建菜单栏之后,我认为您仍然需要将其添加到JFrame中。更改createMenuBar()以返回JMenuBar而不是void,然后可以编写以下代码:
fenster.setJMenuBar(createMenuBar());
我不清楚createMenuBar()代码中的这个是什么,但我猜它不是fenster,而是允许添加的东西。您可以使用fenster.setJMenuBar(menubar)将菜单栏添加到框架中代码>
如果您想将菜单栏添加到JPanel,本文提供了一种方法,您可以使用:
不要使用空布局!!!。这已在您以前的帖子中提出:。注意建议。我们给他们一个理由。请阅读上的Swing教程以获取一个工作示例。代码还将向您展示如何更好地构建您的类。camickr我知道,但这个程序仅适用于我,甚至我在学校的老师告诉我们,我们可以使用空布局。所以我用什么取决于我自己!此外,空布局非常易于使用<代码>此外,空布局使用起来非常简单代码>-不,不是。您完全不知道组件应该有多大才能正确显示。硬编码随机数是一种浪费时间的行为,并且只会在将来引起问题,特别是在需要进行更改时。更改字体之类的简单操作会导致问题。仅仅因为你能做某事并不意味着你应该做。学会正确使用秋千!你甚至还没有学会Swing的基础知识(或者你不会问这个问题),所以你不知道什么是容易的,什么是不容易的。这仅仅来自经验。“这”是扩展的JPanel^^
fenster.setJMenuBar(createMenuBar());