에 대한 addEventHandler
에 대한 가이드가 없으므로 키 입력에서 실시간 유효성 검사를 수행하여 hh:mm
시간 형식 만 허용합니다. 이 표현식이 ^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$
인데 찾을 수는 없지만 eventHandler
에 추가하는 방법을 모르겠습니다. 또한 simpleDateFormat
을 사용하려고했지만 성공하지 못했습니다.javafx : javafx 텍스트 필드 용 addEventHandler를 사용하여 시간을 확인하는 방법
편집 : 나는 이런 식으로 뭔가를 만들기 위해 노력하고있어 (이 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();
}
}
});
현재 자바 FX와 내가 만든 메인 piezimes.java. 마지막에 내가 .getText
그래서 내가 할 수있는 사용자 입력을 호출 버튼을 추가 곳 main.java에서 내가있는 tableView를 만든
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;
}
}
그리고 : 제품 클래스에서 나는 내가 만들려는 객체를 정의합니다. 시간 유효성 확인을 통해서만 문제가 생깁니다. 지금 테이블에 사용자 입력을 추가하는 방법은 다음과 같습니다. piezimes.setLaiks(laiksIevade.getText());
에 https : // 유래. com/questions/31039449/java-8-u40-textformatter-javafx-to-restrict-user-only-for-decimal-number https://stackoverflow.com/a/12851162/2189127 –
@James_D 모두 시도했습니다. 내 프로그램에서 작동하지 않습니다 ... –
시도한 것을 보여주고 작동하지 않는 방식으로 설명하는 질문을 다시 작성해야합니다. [MCVE]를 제공하십시오. 연결된 질문은 올바른 방법을 제공합니다. –