Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 屏幕键盘gui不工作_Java_Swing_Jbutton_Grid Layout_Border Layout - Fatal编程技术网

Java 屏幕键盘gui不工作

Java 屏幕键盘gui不工作,java,swing,jbutton,grid-layout,border-layout,Java,Swing,Jbutton,Grid Layout,Border Layout,我试图在顶部显示一个文本区域,并在其下方显示键盘键,但当我运行此代码时,整个过程是复杂的。我做错了什么?如何解决?代码如下: public Keyboard() { super("Typing Tutor"); pane1= new JPanel(); pane2= new JPanel(); pane3= new JPanel(); pane4= new JPanel(); pane5= new JPanel(); pane6= new

我试图在顶部显示一个文本区域,并在其下方显示键盘键,但当我运行此代码时,整个过程是复杂的。我做错了什么?如何解决?代码如下:

public Keyboard()
{
    super("Typing Tutor");

    pane1= new JPanel();
    pane2= new JPanel();
    pane3= new JPanel();
    pane4= new JPanel();
    pane5= new JPanel();
    pane6= new JPanel();

    glayout= new GridLayout(5,14);
    text= new JTextArea(770,300);

    text.setFocusable(true);

    Handler = new HandlerClass();

    pane1.add(text);

    setLayout(glayout);

    but= new JButton[57];

    AssignLettersToButtons();

    text.addKeyListener(Handler);

    add(pane1,BorderLayout.NORTH);
    add(pane2);
    add(pane3);
    add(pane4);
    add(pane5);
    add(pane6);

}

private void AssignLettersToButtons()
{       
    for(int i=0;i<names.length;i++)
    {
        if(i<14)
        {
            but[i]=new JButton(names[i]);
            pane1.add(but[i]);
        }
  }
公共键盘()
{
超级(“打字导师”);
pane1=新的JPanel();
pane2=新的JPanel();
pane3=新的JPanel();
pane4=新的JPanel();
pane5=新的JPanel();
pane6=新的JPanel();
glayout=新网格布局(5,14);
text=新的JTextArea(770300);
text.setFocusable(true);
Handler=newhandlerClass();
第1栏添加(文本);
设置布局(玻璃窗);
但是=新的按钮[57];
assignletterstobutions();
addKeyListener(处理程序);
添加(窗格1,BorderLayout.NORTH);
添加(第2栏);
添加(第3窗格);
添加(第4栏);
添加(第5页);
添加(第6页);
}
私有void AssignLettersToButtons()
{       

对于(int i=0;i设计可能至少需要3个面板。如下所示

请附上一些您获得的图像作为输出,并放置您预期输出的图像。我无法上传图像,我需要10个声誉:PYou拥有这样的声誉,我现在感谢me@AndrewThompson是的,你是对的hink boxlayout在您的情况下仍然不起作用。我这样做了:pane2.setLayout(glayout);pane3.setLayout(new BorderLayout(10,20));pane3.add(pane1,BorderLayout.NORTH);pane3.add(pane2,BorderLayout.SOUTH);add(pane3);