您好我对Java有点新鲜。
我有一个公共类Instance
String name;
String number;
public Instance(String instanceName, String instanceNumber){
name=instanceName;
number=instanceNumber;
}
和包含一些值的类Myclass。我想用来创建新实例对象的textfields nitext和ni1text以及button nibutton
Button nibutton = new Button("Add");
nibutton.setOnAction((ae)->
Instance nitext.getText()=new Instance(nitext.getText(), ni1text.getText())
);
它不起作用。手动,使用Instance blabla = new Instance [...]一切正常。
它应该如何? THX寻求帮助
编辑:
好的,我添加了动作监听器;
nibutton.addActionListener( new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Instance nitext.getText()=new Instance(nitext.getText(), nc1text.getText();)
}
});
但得到3“非法开始表达”错误,^显示“。”,“;”和“)”
答案 0 :(得分:0)
创建一个无趣的内部ActionListener
类对象:
button.addActionListener( new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
// create whatever you want
}
});
答案 1 :(得分:0)
问题解决了!
Button nibutton = new Button("Add");
nibutton.setOnAction(new EventHandler<ActionEvent>(){
public void handle(ActionEvent ae) {
Instance anything = new Instance(ni1text.getText(), nc2text.getText());
}
});
唯一的问题是我们无法创建动态对象名称(因此在这种情况下不能使用nitext.getText()而不是“any”)。
THX提供任何帮助!