有没有比几个if语句更有效的方法来处理按钮单击事件?

djmordigal

所以,我会尽力解释这个问题...

基本上,我有一个GUI,其主窗口上有几个按钮(大约10个)。我将按钮本身放在一个数组中,但是在处理每个按钮的单击事件时,根据单击哪个按钮,将会发生一些不同的事情。

而不是做这样的事情:

@Override
public void actionPerformed(ActionEvent e) {
    if(e.getActionCommand().equals("Button1Text") { /* do stuff */ }
    else if(e.getActionCommand().equals("Button2Text") { /* do stuff */ }
    else if(e.getActionCommand().equals("Button3Text") { /* do stuff */ }
    else if(e.getActionCommand().equals("Button4Text") { /* do stuff */ }
}

有没有更有效的方法来处理每个按钮在被单击时的响应?这个想法是,每当单击一个按钮时,都会打开一个新窗口,让用户执行与该按钮相关的各种任务。我正在考虑以某种方式getActionCommand()Class.forName()/newInstance()方法结合使用,但是我不确定是否存在另一种(或更简单的方法)来执行类似的操作。

充满鳗鱼的气垫船

您显示的ActionListener有时被称为“总机监听器”,您认为可以对其进行改进是正确的。这是非常严格的代码,难以调试和增强。

我认为最好的办法是根本不用GUI实现ActionListener,而是为每个按钮使用唯一的Actions(即AbstractActions),然后将适当的Action插入适当的按钮。要以最小的耦合插入,请考虑使用依赖注入la Spring或Guice。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

有没有更有效的方法来处理整数数据类型?

来自分类Dev

有没有更有效的方法来运行多个UPDATE SQL语句

来自分类Dev

有没有更有效的方法来运行多个UPDATE SQL语句

来自分类Dev

有没有比pip更有效的方法来满足项目依赖性?

来自分类Dev

有没有比python中的networkx更有效的方法来计算最短路径问题?

来自分类Dev

有没有更有效的方式来处理重复功能?

来自分类Dev

有没有更有效的方法来比较python中的If语句中的多个浮点值?

来自分类Dev

有没有更有效的方法来比较python中的If语句中的多个浮点值?

来自分类Dev

有没有比子查询更有效的方法来将组的结果与表连接起来?

来自分类Dev

有没有更有效的方法来在servlet中输出html?

来自分类Dev

有没有更有效的方法来按数组分组?

来自分类Dev

有没有更有效的方法来执行此嵌套SQL查询?

来自分类Dev

有没有更有效的方法来遍历数据帧?

来自分类Dev

有没有更有效的方法来编码此“ 2 Sum”问题

来自分类Dev

有没有更有效的方法来重构Ruby上哈希的迭代?

来自分类Dev

有没有更快,更有效的方法来保存python字典?

来自分类Dev

有没有更有效的方法来包装浮点数?

来自分类Dev

有没有更有效的方法来存储关键字参数?

来自分类Dev

有没有更有效的方法来按数组分组?

来自分类Dev

有没有更有效的方法来使用grep进行拼字搜索?

来自分类Dev

有没有更有效的方法来运行此功能?

来自分类Dev

有没有更有效的方法来创建分组列表

来自分类Dev

Python:有没有更有效的方法来转换月份的 int 值?

来自分类Dev

有没有更有效的方法来归档我的双循环案例?

来自分类Dev

有没有更有效的方法来编写这段代码?

来自分类Dev

有没有更干净的方法来处理 for 循环中的(连续)独占 if 语句?

来自分类Dev

有没有更干净的方法来处理文本框验证事件

来自分类Dev

有没有一种有效的方法来处理多个复选框来更改wxPython中的一个变量?

来自分类Dev

有没有更有效(更乏味)的方法来做到这一点?

Related 相关文章

  1. 1

    有没有更有效的方法来处理整数数据类型?

  2. 2

    有没有更有效的方法来运行多个UPDATE SQL语句

  3. 3

    有没有更有效的方法来运行多个UPDATE SQL语句

  4. 4

    有没有比pip更有效的方法来满足项目依赖性?

  5. 5

    有没有比python中的networkx更有效的方法来计算最短路径问题?

  6. 6

    有没有更有效的方式来处理重复功能?

  7. 7

    有没有更有效的方法来比较python中的If语句中的多个浮点值?

  8. 8

    有没有更有效的方法来比较python中的If语句中的多个浮点值?

  9. 9

    有没有比子查询更有效的方法来将组的结果与表连接起来?

  10. 10

    有没有更有效的方法来在servlet中输出html?

  11. 11

    有没有更有效的方法来按数组分组?

  12. 12

    有没有更有效的方法来执行此嵌套SQL查询?

  13. 13

    有没有更有效的方法来遍历数据帧?

  14. 14

    有没有更有效的方法来编码此“ 2 Sum”问题

  15. 15

    有没有更有效的方法来重构Ruby上哈希的迭代?

  16. 16

    有没有更快,更有效的方法来保存python字典?

  17. 17

    有没有更有效的方法来包装浮点数?

  18. 18

    有没有更有效的方法来存储关键字参数?

  19. 19

    有没有更有效的方法来按数组分组?

  20. 20

    有没有更有效的方法来使用grep进行拼字搜索?

  21. 21

    有没有更有效的方法来运行此功能?

  22. 22

    有没有更有效的方法来创建分组列表

  23. 23

    Python:有没有更有效的方法来转换月份的 int 值?

  24. 24

    有没有更有效的方法来归档我的双循环案例?

  25. 25

    有没有更有效的方法来编写这段代码?

  26. 26

    有没有更干净的方法来处理 for 循环中的(连续)独占 if 语句?

  27. 27

    有没有更干净的方法来处理文本框验证事件

  28. 28

    有没有一种有效的方法来处理多个复选框来更改wxPython中的一个变量?

  29. 29

    有没有更有效(更乏味)的方法来做到这一点?

热门标签

归档