0

如下所述,我有一个链接到 TextField (text变量)的 EventHandler,并且我想从存在于同一类(MyFunction)中的这个处理程序中调用一个函数,所以我收到了错误(这篇文章的标题):

代码 :

class Example implements Initializable{
  //...
  public void initialize(URL fxmlFileLocation, ResourceBundle resources) {
    //...
    text.setOnKeyPressed(new EventHandler<KeyEvent>(){
        @Override
        public void handle(KeyEvent event) {
            if(event.getCode() == KeyCode.ENTER){

                MyFunction(text.getText());
            }
        }
    });
  //...
  }//function initialize ends here

  public void MyFuction(String text){
      //...
  }
 //...
 }//Class ends here

我正在使用 javaFX 2.2,我希望我的要求很明确。

4

2 回答 2

3

问题似乎出在您的 FXML 文件中。您可能正在做这样的事情:<Button text="Button" onAction="#MyFuction"/>虽然onAction处理程序应该接受扩展类型的单个参数javafx.event.Event

于 2012-09-05T20:33:35.703 回答
1

试着把你的方法放在@FXML前面。MyFuction()

于 2012-09-05T11:54:39.173 回答