gpt4 book ai didi

java - JButtons 没有出现在我的 JFrame 上

转载 作者:行者123 更新时间:2023-12-03 18:32:53 26 4
gpt4 key购买 nike

我正在制作一个包含 GUI 的程序。出于某种原因,当我运行程序时,我创建的 JButton 对象没有显示在我的 JFrame 上。这是代码:

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class ReverseAStringMain extends JPanel {
private JButton enterButton, exitButton;
private JTextField textField;
private JPanel buttonPanel;
private JTextArea textArea;


public ReverseAStringMain(){
JButton enterButton = new JButton("Enter");
JButton exitButton = new JButton("Exit");
enterButton.setPreferredSize(new Dimension(60,60));
exitButton.setPreferredSize(new Dimension(60,60));

ButtonListener listener = new ButtonListener();
enterButton.addActionListener(listener);
exitButton.addActionListener(listener);

buttonPanel = new JPanel();
buttonPanel.setPreferredSize(new Dimension(200,50));
buttonPanel.setBackground(Color.black);
buttonPanel.add(enterButton);
buttonPanel.add(exitButton);


textField = new JTextField();
textField.setSize(200, 100);

textArea = new JTextArea();
textArea.add(textField);


add(buttonPanel);
add(textField);

}

//Creating a ButtonListener class that implements the ActionListener interface
private class ButtonListener implements ActionListener{
@Override
//Overriding the ActionPerformed method of ActionListener
public void actionPerformed(ActionEvent action) {
if(action.getSource()== enterButton)
enterButton();
if(action.getSource()== exitButton)
System.exit(0);
}
}

private void enterButton() {
// TODO Auto-generated method stub

}


public static void main (String[] args){
JFrame frame = new JFrame("Raj's Reverse a String Program");
frame.setBackground(Color.white);
frame.setVisible(true);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.setSize(new Dimension(600,600));
//frame.pack();
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new ReverseAStringMain());



}

}

如果我的代码有任何问题或改进,请告诉我!

最佳答案

您在 JFrame 可见后将其添加到 JFrame 中。您应该在 JFrame 可见之前将它们添加到 JFrame,或者在添加组件之后重新验证 JFrame。

关于java - JButtons 没有出现在我的 JFrame 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21051707/

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