Java 设置按钮和动作侦听器的大小

Java 设置按钮和动作侦听器的大小,java,swing,button,size,setting,Java,Swing,Button,Size,Setting,问题1: 我试图设置我的按钮的大小,但似乎没有改变,而是总是填满整个屏幕,这不是我想要的 问题2: 当我在邮件中添加公共void actionPerformed1(ActionEvent e)时,它似乎没有显示出来。也许是因为按钮填满了整个空间,但我真的不知道 以下是按钮的代码: import java.awt.event.*; import javax.swing.*; import java.awt.*; public class HockeyGame extends JFrame

问题1:

我试图设置我的按钮的大小,但似乎没有改变,而是总是填满整个屏幕,这不是我想要的

问题2:

当我在邮件中添加公共void actionPerformed1(ActionEvent e)时,它似乎没有显示出来。也许是因为按钮填满了整个空间,但我真的不知道

以下是按钮的代码:

import java.awt.event.*;

import javax.swing.*;
import java.awt.*;
   public class HockeyGame extends JFrame implements 
      ActionListener, KeyListener, Runnable, WindowListener  //, ActionListener
        {
        Thread t;
        int xpuck, ypuck,xspeed,yspeed,gx,gy,redx2,redy2,lg,rg, redscore, bluescore,
            redx,redy, gx2, gy2, bluex, bluey,bluex2,bluey2,rg2,lg2;
        //int SQUARE_SIZE=10;
        public HockeyGame ( ) {

            }

        public static void main ( String [ ] commandLine ) {
            HockeyGame hg=new HockeyGame();
            hg.init();
        }

        public void actionPerformed1(ActionEvent e) {
            JOptionPane.showMessageDialog(null,"testing");
        }
        public void init() {
            Button b;           
            b = new Button("Click me");
            b.addActionListener(this); 
            b.setSize(40, 40);
            add(b);
            t=new Thread(this);
            this.addKeyListener(this);
            this.setFocusable(true);
            setSize(700,700);
            setVisible ( true );

任何帮助都是值得感激的,因为从简单的练习开始,让你在基础上变得强大

1) 由于内容窗格的默认布局为边框布局,因此按钮将填充空间。将布局设置为“流动布局”或任何其他布局

2) 函数名应该与Action Listener中定义的函数名完全相同


public void actionPerformed(ActionEvent e)
{}

除非你对基本知识掌握得很好,否则我所说的一切都没有意义。

1)要想更快地获得更好的帮助,请发布一篇文章。2) 请使用通用Java术语(即
ypuck
->
ypuck
)3)不要设置按钮的大小。相反,使用布局、填充和布局间距将按钮按所需大小放置在需要的位置。4) 使用键绑定而不是
keylister
。5) 在EDT上创建和更改GUI。6)
JOptionPane.showMessageDialog(空,“测试”)应该是
JOptionPane.showMessageDialog(这是“测试”)7)内容窗格的默认布局是
边框布局
,一个没有约束的组件被添加到
中心
我同意Andrew发布的所有内容,并将添加:阅读,因为您的问题是由于对它们的工作方式缺乏了解。另外,如果您有两个不同的问题,将它们作为单独的问题发布