2013-02-19 13 views
6

textA alanımdaki tüm metni seçmek için selectionAll() yöntemini kullanıyorum ancak odak, klavyeden (Tab gibi) geldiğinde çalışır.JavaFx: Yöntem selectAll() sadece klavye ile odaklanarak çalışır

Metin alanımda fareyle tıklatırsam, metni çok kısa bir an için seçer. Ancak klavyeden gelen odak ile çalışmak zorunda.

flaschenPreis.focusedProperty().addListener(new ChangeListener<Boolean>() { 
     public void changed(ObservableValue ov, Boolean t, Boolean t1) { 


      if (flaschenPreis.isFocused() && 
        !flaschenPreis.getText().isEmpty()) { 
       flaschenPreis.selectAll(); 
      }    
     } 
    }); 


    literPreis.focusedProperty().addListener(new ChangeListener() { 
     public void changed(ObservableValue ov, Object t, Object t1) { 

      if (literPreis.isFocused() && 
        !literPreis.getText().isEmpty()) { 
       literPreis.selectAll(); 
      } 
     } 
    }); 

flaschenPreis und literPreis Bu numara size yardımcı olacaktır

+0

, burada http://javafx-jira.kenai.com/ rapor edin güvenli/Dashboard.jspa – invariant

cevap

13

benim textfields şunlardır:

o hatası gibi görünen
final TextField tf = new TextField("Text"); 
    tf.focusedProperty().addListener(new ChangeListener<Boolean>() { 
     @Override 
     public void changed(ObservableValue ov, Boolean t, Boolean t1) { 

      Platform.runLater(new Runnable() { 
       @Override 
       public void run() { 
        if (tf.isFocused() && !tf.getText().isEmpty()) { 
         tf.selectAll(); 
        } 
       } 
      }); 
     } 
    }); 
+0

Vay! İşe yarıyor!! Müthiş !!! Bu bölüm üzerinde çalıştığı program için çok önemlidir. Çok teşekkür ederim!! Yardımın için sağol. – Sonja

+1

Sonja, bununla ilgili bir sorun mu yaptın? –

+0

henüz yok. yakında yapacak – Sonja