Ich habe schwer Zeit finden alle Anleitungen, wie zu addEventHandler
für textfield
, so dass es Echtzeit Validierung von Tasteneingaben zu nur hh:mm
Zeitformat ermöglicht. Ich habe diesen Ausdruck ^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$
gefunden, weiß aber nicht, wie ich ihn zur eventHandler
hinzufügen soll. Auch ich habe versucht, simpleDateFormat
aber ohne Erfolg zu verwenden.javafx: How to addEventHandler für javafx Textfeld für die Validierung Zeit
Edit: Ich versuche, so etwas zu machen (dies war mit JFrame):
JTextField iegadesVerTesksts = new JTextField();
panel.add(iegadesVerTesksts);
iegadesVerTesksts.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent evt) {
char c = evt.getKeyChar();
if ((!(Character.isDigit(c) || (c == KeyEvent.VK_BACK_SPACE) || c == KeyEvent.VK_DELETE))
&&evt.getKeyChar()!='.') {
evt.consume();
}
if(evt.getKeyChar()=='.'&&iegadesVerTesksts.getText().contains(".")){
evt.consume();
}
}
});
Gerade jetzt mit JavaFX Ich habe Haupt- und piezimes.java erstellt. In der Produktklasse definiere ich Objekte, die ich erstellen möchten:
public class Piezimes {
private LocalDate datums;
private String laiks;
private String piezime;
public Piezimes(){
this.datums = null;
this.laiks = "";
this.piezime = "";
}
public Piezimes (LocalDate datums, String laiks, String piezime){
this.datums = datums;
this.laiks = laiks;
this.piezime = piezime;
}
public LocalDate getDatums() {
return datums;
}
public void setDatums(LocalDate datums) {
this.datums = datums;
}
public String getLaiks() {
return laiks;
}
public void setLaiks(String laiks) {
this.laiks = laiks;
}
public String getPiezime() {
return piezime;
}
public void setPiezime(String piezime) {
this.piezime = piezime;
}
}
Und in main.java ich Tableview erstellt haben, am Ende, wo ich Tasten hinzugefügt, wo ich rufe .getText
so kann ich Benutzereingaben. Nur mit der Zeit Validierung habe ich Probleme mit. Methode im Augenblick, die ich anrufe, um Benutzereingabe zu Tabelle hinzuzufügen, ist: piezimes.setLaiks(laiksIevade.getText());
https: // Stackoverflow. com/questions/31039449/java-8-u40-textformatter-javafx-zu-beschränken-user-input-only-für-dezimal-nummer https://stackoverflow.com/a/12851162/2189127 –
@James_D versuchte beide. Funktioniert nicht für mein Programm ... –
Sie sollten Ihre Frage neu schreiben, um zu zeigen, was Sie versucht haben und auf welche Weise es nicht funktioniert. Stellen Sie einen [MCVE] bereit. Die verknüpften Fragen bieten den richtigen Weg dazu. –