Java 无法调整JButton的大小
我试图用swing编写一个程序,这样左边有一个JList,右边有五个jbutton。所以我为一个JButton编写了代码,但我无法调整或移动它。任何帮助都将不胜感激。非常感谢!!这是我的密码:Java 无法调整JButton的大小,java,swing,intellij-idea,Java,Swing,Intellij Idea,我试图用swing编写一个程序,这样左边有一个JList,右边有五个jbutton。所以我为一个JButton编写了代码,但我无法调整或移动它。任何帮助都将不胜感激。非常感谢!!这是我的密码: import java.awt.*; import java.awt.event.*; import javax.swing.*; public class GenericFrame { private JFrame mainFrame; private JPanel controlPa
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class GenericFrame {
private JFrame mainFrame;
private JPanel controlPanel;
public GenericFrame(){
prepareGUI();
}
private void prepareGUI(){
mainFrame = new JFrame("Generic Frame");
mainFrame.setSize(800,400);
mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainFrame.setLayout(new FlowLayout());
controlPanel = new JPanel();
controlPanel.setLayout(new FlowLayout());
controlPanel.setSize(800,400);
mainFrame.add(controlPanel);
mainFrame.setVisible(true);
}
public void showButtons(){
JButton showButton = new JButton("Show");
showButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("hello");
}
});
showButton.setLayout(new BorderLayout());
showButton.setLocation(0, 200);
JButton viewButton = new JButton("view");
viewButton.setLocation(showButton.getX(), showButton.getY() + 100);
controlPanel.add(showButton);
controlPanel.add(viewButton);
}
public static void main(String[] args){
GenericFrame swingControlDemo = new GenericFrame();
swingControlDemo.showButtons();
}
}
记录在案,我用的是IntelliJ。我在具有不同操作系统的多台计算机上尝试了此操作,但此错误仍然存在。请帮帮我
我试图用swing编写一个程序,这样左边有一个JList,右边有五个jbutton
因此,在使用布局管理器时,通常需要使用嵌套面板。因此,在您的情况下,我建议您保留框架的默认边框布局,并将JList添加到框架中,并将包含5个按钮的面板添加到框架中。基本准则是:
JList list = new JList(...);
frame.add(new JScrollPane( list ), BorderLayout.CENTER);
JPanel buttonPanel = new JPanel(...);
buttonPanel.add( button1 );
frame.add(buttonPanel, BorderLayout, BorderLayout.LINE_END);
因此,要知道您的下一个选择是用于按钮面板的布局管理器。也许是垂直布局?有关每个布局管理器的详细信息和示例,请阅读上Swing教程的部分
不要试图在组件上使用setSize或setLocation。布局管理器的任务是设置这些属性