【问题标题】:Specific input from user来自用户的特定输入
【发布时间】:2013-04-07 09:06:26
【问题描述】:

我开始制作自己的带有按钮、标签和文本字段的小程序,但我希望当您在文本字段中输入特定内容时,它会执行一些操作。我试过if(fieldTextField.equals(mystringhere)) {,但它不起作用。你能发布一个我想要的例子吗?

【问题讨论】:

  • 请发布整个代码。
  • 没有人可能会偷它。
  • @NaameNameee 你在 NASA 工作吗?不,所以不要害怕,没有人在窃取您的代码。
  • 很好。这里:pastebin.com/ABJixz6Z

标签: java applet textfield


【解决方案1】:

您必须使用 KeyListener,这样您就可以在每次用户在您的字段中输入内容时收听键盘并检查您的文本:

KeyListener kl = new KeyAdapter(){
    public void keyTyped(KeyEvent evt)){
        if(yourTextField.getText().equals(yourString){
            //do something here
        }
    }
};
yourTextField.addKeyListener(kl);

请注意,yourTextField 必须是实例变量或本地 final 变量才能在 KeyListener 方法中使用

【讨论】:

  • 制作一个本地 final 变量?
  • @NaameNameee 好吧,如果您的变量是field1TextField,它已经是一个实例变量,所以您不需要将其定为最终变量。另外,我看到您所有的 GUI 组件都来自 java.awt 包。如果可以,请使用 javax.swing 包,它要好得多,有两个链接可以解释为什么 swing 比 awt 更好:link 1link 2
  • 我的 field1TextField 是一个简单的文本字段。 TextField field1TextField = new TextField("Insert Text Here");
  • 还有一件事,javax.swing?我不知道如何使用它。生病发布另一个关于那个的问题
  • 你检查了我给你的两个链接吗?他们解释它
【解决方案2】:

查看事件侦听器 (http://docs.oracle.com/javase/tutorial/uiswing/events/intro.html)。此外,您不应该将 TextField 本身与 String 进行比较,而是使用 getText() 方法将其与文本进行比较。

编辑:比上面的链接更好:http://docs.oracle.com/javase/tutorial/uiswing/components/textfield.html

【讨论】:

    猜你喜欢
    • 2015-11-10
    • 2015-10-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多