@Override
public void valueChange(com.vaadin.data.Property.ValueChangeEvent event) {
//Die TextArea soll genau dann erscheinen, wenn ein bestimmtes Feld einer Tabelle
//angeklickt wird, das klappt auch ganz gut.
//Diese TextArea, welche erscheinen soll, wird hier erzeugt.
final TextArea ta = new TextArea();
ta.setHeight(400, UNITS_PIXELS);
ta.setWidth(360, UNITS_PIXELS);
ta.setMaxLength(7000);//Eine Chatnachricht darf maximal 7000 Zeichen haben.
ta.setImmediate(true);
//Was ich geplant habe, ist eben folgendes.
//Wenn die TextArea im Focus ist...
ta.addListener(new FocusListener() {
public void focus(FocusEvent event) {
//Dann will ich einen Shortcutlistener der TextArea hinzufügen...
ta.addShortcutListener(new AbstractField.FocusShortcut(ta, KeyCode.ENTER,null){
ShortcutAction ent = new ShortcutAction("Default key",ShortcutAction.KeyCode.ENTER, null);
public void handleAction(ShortcutAction action, Object sender,Object target) {
//...und egal, was der User dann schreibt, dann soll eben zunächst einmal eine Notification kommen, "clicked".
//Aber leider kommt da nichts. Die Frage ist - weiß jemand, was ich da falsch mache?
if(action == ent){
Notification.show("clicked");
}
}
});
}
});
///usw.
gridlayout.addComponent(sendaction,1,2);
gridlayout.setComponentAlignment(sendaction, Alignment.TOP_RIGHT);
}
});