繁体   English   中英

如何为可变数量的按钮创建动作?

[英]How can I create actions for a variable number of buttons?

我正在为类项目创建的游戏创建用户界面,不用说我对Swing没有经验。

我确实了解了动作事件以及简单的按钮按下操作,但是在那种情况下,我知道屏幕上会显示多少个按钮。 在这里,我需要用任意数量的图块创建一个面板,将在Swing中将其表示为按钮。 我需要按下一个按钮,然后将角色从一个图块“移动”到另一个图块,因此我需要在一个图块对象上调用一个方法,以从该图块中删除播放器,然后将其添加到另一个图块中。

所以我的问题是,鉴于按钮的数量是在运行时生成的(并存储在2d数组中),我如何制作一个能够区分每个唯一按钮的动作侦听器?

将所有按钮设置为相同的处理程序:

ActionListener a = new ActionListener() {

   @Override
   public void actionPerformed(ActionEvent evt) {
       if (evt.getSource() == buttons[0][0]) {

       }
       // etc
       // common handling
   }
};

for (int i = 0; i < height; ++i)
  for (int j = 0; j < width; ++j)
    buttons[i][j].addActionListener(a);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM