作为动作监听器的一部分,我如何调用输入到对话框中的信息?

Posted

技术标签:

【中文标题】作为动作监听器的一部分,我如何调用输入到对话框中的信息?【英文标题】:How do I call on information entered into a dialogue box as part of action listener? 【发布时间】:2014-04-22 16:12:03 【问题描述】:

我的程序中有一个附加到 JButton 的动作侦听器。 单击按钮时,会打开一个对话框,要求用户输入一个数字,然后单击确定。

这部分工作正常,我遇到的麻烦是调用用户输入的号码以用作 if 语句的一部分。

谁能告诉我如何拨打用户输入的这个号码,这是我目前的代码。

public void actionPerformed(ActionEvent e) 
    if (e.getSource() == t1) 
        String Message = "Enter an Amount ";
        String number = JOptionPane.showInputDialog(null, Message,
                JOptionPane.QUESTION_MESSAGE);
    
    if ()  // ideally here i would want to say if the user number is bigger
                // than 0 then do this...
    

更改后我的代码现在看起来像这样

public void actionPerformed(ActionEvent e)

        if (e.getSource() == t1)
 
    String Message = "Enter an Amount ";
    String number = 
 JOptionPane.showInputDialog(null,
                        Message,                          
                        JOptionPane.QUESTION_MESSAGE);



  if(Integer.valueOf(number) > 0)


    String s = a.gettext();
    getContentPane().removeAll();
    repaint();

  new TaxiFrame(Integer.parseInt(s));

  else


 
            else


【问题讨论】:

感谢您的回复。我已经使用了一些代码并且到目前为止它已经工作了,但是我现在需要将该数字作为这个表达式的一部分 String s = a.getText();我已经添加了上面的更新代码,谢谢 【参考方案1】:
try 
   //.Convert string to Integer 
   if (Integer.valueOf(number) > 0) 
      //. Do that
    else 
     //. Otherwise
   
 catch (NumberFormatException err) 
  err.printStackTrace();
  //.Conversion failed. The user entered a non numeric string

【讨论】:

以上是关于作为动作监听器的一部分,我如何调用输入到对话框中的信息?的主要内容,如果未能解决你的问题,请参考以下文章

使用 jquery 调用 cakephp 动作并将数组作为参数传递

如何从不同的动作监听器调用同一个线程

Java:使用动作监听器在该类的对象上调用另一个类中的函数

无法在动作侦听器(Jframe)中引用非变量

如何在 Android 中使用接口作为监听器和 Dialog?

commandButton / commandLink / ajax动作/侦听器方法未调用或输入值未设置/更新