package design;
import java.awt.*;import javax.swing.*;
public class ControlPanel extends JFrame {
public JButton moveleft;
public JButton moveright;
public JButton moveup;
public JButton movedown;
public JButton focus;
public JButton connection;
public ControlPanel(int a){
setLayout(new BorderLayout());
JPanel jpanel = new JPanel();
moveleft = new JButton("向左移动");
moveright = new JButton("向右移动");
moveup = new JButton("向上移动");
movedown = new JButton("向下移动");
focus = new JButton("聚焦");
connection = new JButton("连接");
jpanel.add(moveleft,BorderLayout.EAST);
jpanel.add(moveright,BorderLayout.WEST);
jpanel.add(moveup,BorderLayout.NORTH);
jpanel.add(movedown,BorderLayout.SOUTH);
jpanel.add(focus,BorderLayout.CENTER);
jpanel.add(connection,BorderLayout.NORTH);
add(jpanel,BorderLayout.CENTER);
}
public static void main (String[] args){
JFrame frame = new JFrame("控制台");
frame.getContentPane();
frame.setSize(400,300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
问题是所声明控键没有添加到面板里面去。
import java.awt.*;import javax.swing.*;
public class ControlPanel extends JFrame {
public JButton moveleft;
public JButton moveright;
public JButton moveup;
public JButton movedown;
public JButton focus;
public JButton connection;
public ControlPanel(int a){
setLayout(new BorderLayout());
JPanel jpanel = new JPanel();
moveleft = new JButton("向左移动");
moveright = new JButton("向右移动");
moveup = new JButton("向上移动");
movedown = new JButton("向下移动");
focus = new JButton("聚焦");
connection = new JButton("连接");
jpanel.add(moveleft,BorderLayout.EAST);
jpanel.add(moveright,BorderLayout.WEST);
jpanel.add(moveup,BorderLayout.NORTH);
jpanel.add(movedown,BorderLayout.SOUTH);
jpanel.add(focus,BorderLayout.CENTER);
jpanel.add(connection,BorderLayout.NORTH);
add(jpanel,BorderLayout.CENTER);
}
public static void main (String[] args){
JFrame frame = new JFrame("控制台");
frame.getContentPane();
frame.setSize(400,300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
问题是所声明控键没有添加到面板里面去。
setLayout(new BorderLayout());
JPanel jpanel = new JPanel();
moveleft = new JButton("向左移动");
moveright = new JButton("向右移动");
moveup = new JButton("向上移动");
movedown = new JButton("向下移动");
focus = new JButton("聚焦");
connection = new JButton("连接");
jpanel.add(moveleft,BorderLayout.EAST);
jpanel.add(moveright,BorderLayout.WEST);
jpanel.add(moveup,BorderLayout.NORTH);
jpanel.add(movedown,BorderLayout.SOUTH);
jpanel.add(focus,BorderLayout.CENTER);
jpanel.add(connection,BorderLayout.NORTH);
add(jpanel,BorderLayout.CENTER);
setSize(800, 600);
setVisible(true);
}
setLayout(new BorderLayout());
JPanel jpanel = new JPanel();
moveleft = new JButton("向左移动");
moveright = new JButton("向右移动");
moveup = new JButton("向上移动");
movedown = new JButton("向下移动");
focus = new JButton("聚焦");
connection = new JButton("连接");
jpanel.add(moveleft,BorderLayout.EAST);
jpanel.add(moveright,BorderLayout.WEST);
jpanel.add(moveup,BorderLayout.NORTH);
jpanel.add(movedown,BorderLayout.SOUTH);
jpanel.add(focus,BorderLayout.CENTER);
jpanel.add(connection,BorderLayout.NORTH);
add(jpanel,BorderLayout.CENTER);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane();
setSize(400,300);
}
public static void main(String[] args)
{
JFrame frame = new JFrame("控制台");
frame.setVisible(true);
}
public ControlPanel(int a){
Container c=getContentPane();
c.setLayout(new BorderLayout());
JPanel jpanel = new JPanel();
moveleft = new JButton("向左移动");
moveright = new JButton("向右移动");
moveup = new JButton("向上移动");
movedown = new JButton("向下移动");
focus = new JButton("聚焦");
connection = new JButton("连接");
jpanel.add(moveleft,BorderLayout.EAST);
jpanel.add(moveright,BorderLayout.WEST);
jpanel.add(moveup,BorderLayout.NORTH);
jpanel.add(movedown,BorderLayout.SOUTH);
jpanel.add(focus,BorderLayout.CENTER);
jpanel.add(connection,BorderLayout.NORTH);
//将面板jpanel添加到容器c中,面板必须依靠容器才能在框架中显示出来
c.add(jpanel,BorderLayout.CENTER);
setSize(800, 600);
setVisible(true);
}
import javax.swing.*; public class ControlPane extends JFrame {
public JButton moveleft;
public JButton moveright;
public JButton moveup;
public JButton movedown;
public JButton focus;
public JButton connection;
public ControlPane(int a){
super("控制台");
Container container = getContentPane();
this.setLayout(new BorderLayout());
JPanel jpanel = new JPanel();
moveleft = new JButton("向左移动");
moveright = new JButton("向右移动");
moveup = new JButton("向上移动");
movedown = new JButton("向下移动");
focus = new JButton("聚焦");
connection = new JButton("连接");
container.add(moveleft,BorderLayout.EAST);
container.add(moveright,BorderLayout.WEST);
container.add(moveup,BorderLayout.NORTH);
container.add(movedown,BorderLayout.SOUTH);
container.add(focus,BorderLayout.CENTER);
container.add(connection,BorderLayout.NORTH);
container.add(jpanel,BorderLayout.CENTER);
setSize(400,300);
setVisible(true);
}
public static void main (String[] args){
ControlPane cp = new ControlPane(0); cp.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
ControlPanel frame = new ControlPanel();而不是创建JFrame frame = new JFrame("控制台"); 的对象。
jpanel.setLayout(new BorderLayout());