首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ActionListener怎么知道巴顿是怎么被推的?

ActionListener怎么知道巴顿是怎么被推的?
EN

Stack Overflow用户
提问于 2010-12-01 22:51:01
回答 1查看 608关注 0票数 0

我已经编写了两个方法来获取和返回一个字符串。一个人从英语转换成猪拉丁语,反之亦然。我有两个JTextFields (一个是英语,另一个是Piglatin-供用户输入)。同样,两个JButtons:"To English“和"To Pig拉丁语”。我很困惑如何使用动作侦听器。看起来只需要一个ActionListener就可以执行所有你想要的“点击”,但是我不知道它怎么知道你按了哪个按钮。我本能地希望为每个按钮创建两个ActionListeners,这样当单击按钮时,将执行适当的代码。

有人能给我看看和/或向我解释一下这一切是如何工作的吗?到目前为止,我对所有事情的理解总结:

  1. 在JTextField中键入英语单词
  2. 单击"To Pig拉丁语“按钮
  3. ActionListener不知何故知道单击"To Pig拉丁文“按钮,并以JTextField文本作为参数执行toPigLatin()方法。(假设JTextField输入自动被认为是字符串类型,那么实际上还没有做到这一点)。
  4. 从该方法返回的字符串被输出到Pig拉丁语JTextField,供用户查看。

谢谢大家!

我找到了我要找的东西。对不起,我在错误的论坛上发布了它,并感谢您将它迁移到它所属的地方……我打算在这里发布它!:) ,如果有人感兴趣的话,每个按钮在点击时都会执行特定的代码块:ActionEvent.getActionCommand().equals(“button的名字”),这是我的最后解决方案:

代码语言:javascript
复制
public void actionPerformed(ActionEvent e) {
    if (e.getActionCommand().equals("To Pig Latin")){
        String english = English.getText();
        PigLatin.setText(englishToPigLatin(english));
    }
    if (e.getActionCommand().equals("To English")){
        String piglatin = PigLatin.getText();
        English.setText(pigLatinToEnglish(piglatin));
    }
    String piggyCount = Integer.toString(pigCount);
    countP.setText("Number of Successful Word Translations:   English: "+piggyCount+"   ");
    String englishyCount = Integer.toString(englishCount);
    countE.setText(String.format("Pig-Latin: "+englishyCount));
}

再次感谢所有想帮我的人!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-12-01 23:00:58

关于ActionListeners 这里有一个很好的教程。对两个按钮使用相同侦听器的最简单方法是在传递给e.getActionCommand()函数的ActionEvent上调用actionPerformed。这将返回一个带有按钮标签的字符串,然后可以在if语句中使用该字符串来执行适当的操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4332782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档