JavaFX Temelleri (2) Araç İpuçları (Tooltips), Yazı Tipleri (Fonts), Çalışma Ortamları ve Dağıtım Oluşturma, JavaFX Özellikleri (JavaFX Properties), Gözlenebilirlik (Observability), Bağlanımlar (Bindings) ve JavaFX Koleksiyonları (JavaFX Collectıons)
25
Embed
JavaFX Temelleri (2) - leventbayindir.netleventbayindir.net/wp-content/uploads/2013/07/bim205-hafta10.pdf · JavaFX Temelleri (2) Araç İpuçları (Tooltips), Yazı Tipleri (Fonts),
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
JavaFX Temelleri (2) Araç İpuçları (Tooltips), Yazı Tipleri (Fonts), Çalışma Ortamları ve Dağıtım
Oluşturma, JavaFX Özellikleri (JavaFX Properties), Gözlenebilirlik (Observability), Bağlanımlar (Bindings) ve JavaFX Koleksiyonları (JavaFX
Collectıons)
Araç İpuçları (Tooltips)
• Farenin bir GUI bileşeninin üzerine gelmesi durumunda gösterilen mesajlardır
• Yazılımın kullanılabilirliğini ve sezgiselliğini arttırır
• javafx.scene.control.Tooltip sınıfı
• Control sınıfı (Node sınıfının alt sınıfı) nesnelerine atanabilir • Control nesneleri: kullanıcı tarafından kullanılabilen (durumu değiştirilebilen)
nodlardır
• javafx.scene.control.Control soyut sınıfı
• Bir Control nesnesine araç ipucu atamak için: • void setTooltip(Tooltip tip)
• invalidated() metodu gözlemlenebilir nesne içeriği geçersiz olduğunda çağırılır • Bir değer, içeriği en son değiştiğinden beri tekrar alınmamışsa geçersiz olur
Özellik Gözlenebilirliği
• Observable arayüzünü temel alan ObservableValue<T> arayüzü • void addListener(ChangeListener<? super T> listener)
• void removeListener(ChangeListener<? super T> listener)
• T getValue()
• Gözlenebilir değer değiştiğinde, getValue() metotu çağırılana kadar geçersiz olur
• Property<T> arayüzü ObservableValue<T> arayüzünü temel alır
• Gözlemci nesneler ChangeListener<T> arayüzünü gerçekleştirir • void changed(ObservableValue<? extends T> observable, T oldValue, T newValue)
Özellik Gözlemcisi Örneği
Exam mathsExam = new Exam();
mathsExam.scoreProperty().addListener(
new ChangeListener() {
public void changed(ObservableValue o,
Object oldVal, Object newVal) {
System.out.println("Old score " + oldVal +
", new score " + newVal);
}
});
mathsExam.setScore(10);
PropertiesExample Projesi
Bağlanımlar (Bindings) - Bağlılıklar
• Bağlı nesneler belli bir değeri bir veya daha fazla kaynak nesneyi kullanarak hesaplarlar
• Kaynak nesneler: bağlılıklar • ObservableValue<T> arayüzünü gerçekleştirirler
Bağlanımlar (Bindings)
• Bağlanım bağlılıklarını gözlemlerler
• Binding<T> arayüzü • ObservableValue<T> arayüzünü temel alır
• Bağlanımlar gözlemlenebilirdir. Bu yüzden başka bağlanımlar için bir bağlılıktır
• Bağlanımlar, Bindings sınıfının statik metotları kullanılarak oluşturulurlar
• Örnek bağlanımlar: • Matematiksel, mantıksal veya String ifadeler
Bağlanım Örneği
DoubleProperty num = new SimpleDoubleProperty(1.22);
DoubleProperty denom = new SimpleDoubleProperty(6.1);
System.out.println("average hours per day: " + newVal);
}
});
BindingExercise Projesi
JavaFX Koleksiyonları
• Standart Java koleksiyonları: List<T>, Map<K, V>
• JavaFX koleskiyonları liste (list) ve haritalara (map) gözlenebilirlik ekler: • ObservableList, ObservableMap arayüzleri Observable arayüzünü temel alır