Ankara
0 (312) 276 75 93
info@billgatesweb.com

 Swing Listesi – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Web Danışmanlık Hizmeti, Seo Hizmeti Al, Mobile Uygulama Yaptır, Back Link Satın Al, Blog Yazdırmak İstiyorum, Makale YAZDIRMA siteleri, Parayla makale YAZDIRMA, Seo makale fiyatları, Sayfa başı yazı yazma ücreti, İngilizce makale yazdırma, Akademik makale YAZDIRMA, Makale Fiyatları 2022, Makale yazma, Blog Yazdırma, Akademik Danışmanlık, Tercüme Danışmanlık

 Swing Listesi – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Java Dahili Çerçeve Sınıfı – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

 Swing Listesinin Anatomisi

Artık temelleri gördüğümüze göre, JList’e daha yakından bakalım. Swing’in liste sınıfları için üst düzey bir sınıf diyagramı gösterir. Özellikle, en sağdaki üç arayüze dikkat edin.

Her liste bileşeni, gösterildiği gibi üç bölümden oluşur. Üç bölümden ilki, liste verileri adı verilen listeyi oluşturan öğelerdir. Tahmin edebileceğiniz gibi, liste verileri bir modele atanır ve ListModel arayüzünü uygulayan bir nesne liste verilerini temsil eder.

JList varsayılan olarak, bir Vector içinde veri nesneleri koleksiyonu depolayan bir ListModel uygulaması olan DefaultListModel sınıfını kullanır. İhtiyaçlarınıza daha özel bir model istiyorsanız, AbstractListModel sınıfını her zaman genişletebilir ve işlevselliğini artırabilirsiniz. Alternatif olarak, kendinize ait yeni bir ListModel uygulayabilirsiniz.

İkinci unsur da bir modeldir; ancak bu, kullanıcının seçimlerini temsil eder. Seçim verileri için model arabirimi ListSelectionModel’dir.

Liste veri modeli gibi, minimal bir uygulaması da vardır: DefaultListSelectionModel . Örneğin, varsayılan JList ile birkaç aralığı aynı anda seçebilirsiniz. Ancak, belirli bir zamanda yalnızca bir öğenin seçilmesine izin vermek için DefaultListSelectionModel’i de programlayabilirsiniz.

Son parçaya hücre oluşturucu denir. Bir hücre işleyici, hücrenin seçildiği zaman da dahil olmak üzere, her bir hücrenin verilerini listede nasıl görüntülediğini tanımlar. Liste öğelerini işlemek için neden bütün bir sınıf? Daha önce de belirttiğimiz gibi, liste verileri artık dizelerle sınırlı değildir.

Simgeler ve animasyonlar, açıklayıcı metnin yerinde veya yanında görüntülenebilir. Bir hücre oluşturucu, karmaşık verileri işlemenin bir yolu olarak birçok Swing bileşeninde yaygındır. Aslında, dikkatli bir şekilde yazarsanız, birkaç yerde tekrar kullanılabilir.

Aşağıdaki bölümlerde, bir Swing listesi oluşturan çeşitli modeller ve destek sınıfları özetlenmektedir. Swing JList sınıfını olduğu gibi tanımak istiyorsanız, JList’te seçili O’Reilly Java kitaplarının grafiksel bir listesini oluşturduğumuz bölüme atlayabilirsiniz. Öte yandan, JList’in verileri ve seçim modelleri hakkında daha fazla bilgi edinmek istiyorsanız okumaya devam edin!

Liste Verilerini Temsil Etmek

Swing, liste öğelerinin bir modelini korumak için bir arabirim ve iki sınıf kullanır. Listelerle programlama yaparken, genellikle bu sınıfları değişiklik yapmadan yeniden kullanabileceğinizi göreceksiniz. Bazen, eksik olan işlevselliği elde etmek için bu sınıfları genişletmeyi ve hatta yeniden yazmayı gerekli bulabilirsiniz. Her iki durumda da, üçünü de ayrıntılı olarak incelemek önemlidir. En kolayından başlayalım: ListModel.

ListModel Arayüzü

ListModel, liste verilerine erişmek için basit bir arayüzdür. Dört yöntemi vardır: listedeki verileri almak için bir yöntem, listenin toplam boyutunu elde etmek için bir yöntem ve liste verilerinde değişiklik dinleyicilerini kaydetmek ve kaydını silmek için iki yöntem. ListModel arabiriminin kendisinin yalnızca liste öğelerini almak için bir yöntem içerdiğine dikkat edin, onları ayarlamayın. Liste değerlerini ayarlama yöntemleri, bu arabirimi uygulayan sınıflarda tanımlanır.


Java Swing
Java JList Kullanımı
Java Swing konu anlatımı
Java Swing Nedir
Java Swing Örnekleri
JList Java
Java Swing PDF
Default list model java example


Özellikler

ListModel arabirimi, gösterilen iki özelliği tanımlar. elementAt, listeden tek tek nesneleri almanıza izin veren dizine alınmış bir özelliktir; size öğelerin toplam sayısını söyler. ListModel arabirimi ayrıca standart addListDataListener() ve removeListDataListener() olay abonelik yöntemlerini içerir.

Bu yöntemler, listenin içeriği değiştiğinde bilgilendirilmek isteyen dinleyicileri kabul eder. Listedeki öğeler eklendiğinde, kaldırıldığında veya değiştirildiğinde bir ListDataEvent oluşturulmalıdır.

Soyut Liste Modeli Sınıfı

AbstractListModel sınıfı, gerekli addListDataListener() ve removeListDataListener() olay kayıt sınıflarının uygulamalarını sağlayarak ListModel arabirimini tamamlar. Ayrıca, ListDataEvent nesnelerini tetiklemek için üç yöntem sağlar.

Bu yöntemler, liste verilerinde bir ekleme, çıkarma veya değişiklik yapıldığında tetiklenir. Bir ListDataEvent’in doğası gereği daha genel olan bir PropertyChangeEvent ile aynı olmadığına dikkat edin.

Bir ListDataEvent’i tetiklemek için alt sınıflar tarafından çağrılır. Olay, dizin1 ile dizin2 arasındaki liste öğelerinde bir değişikliğin meydana geldiğini gösterir. dizin2, dizin1’den küçük olabilir. Kaynak değişken, değişikliğin sinyalini veren nesneye bir referans sağlar.

Bir ListDataEvent’i tetiklemek için alt sınıflar tarafından çağrılır. Olay, index1 ve index2 (dahil) arasındaki liste öğelerinin listeye eklendiğini gösterir. Dizin2’nin daha büyük dizin olduğunu varsayarsak, daha önce listede dizin1’de bulunan öğe artık öğedir (index2+1). Sonraki tüm öğeler de kaydırılır. dizin2, dizin1’den küçük olabilir. Kaynak değişken, değişikliğin sinyalini veren nesneye bir referans sağlar.

Bir ListDataEvent’i tetiklemek için alt sınıflar tarafından çağrılır. Olay, dinleyiciye dizin1’den dizin2’ye kadar olan liste öğelerinin listeden kaldırıldığını gösterir. İndeks2’nin daha büyük indeks olduğunu varsayarsak, daha önce (index2+1)’deki eleman şimdi indeks1 olur ve daha büyük olan tüm elemanlar buna göre aşağı kaydırılır. dizin2, dizin1’den küçük olabilir. Kaynak değişken, değişikliğin sinyalini veren nesneye bir referans sağlar.

AbstractListModel sınıfı, liste modeli arabirimi tarafından tanımlanan olay çerçevesini tamamlamasına rağmen, ListModel arabiriminin kalan iki yöntemini uygulamaz: getSize() ve getElementAt(). Bunun yerine, bunları soyut olarak tanımlar (tüm sınıfı soyut hale getirir) ve veri depolamayı ve almayı DefaultListModel gibi bir alt sınıfa bırakır.

Varsayılan Liste Modeli Sınıfı

Swing, AbstractListModel sınıfının DefaultListModel adlı varsayılan bir uygulamasını sağlar. Bu sınıf, çoğu Java programcısının rahatça kullanabileceği yeniden boyutlandırılabilir bir nesne dizisi olan java.util.Vector sınıfını temel alır. DefaultListModel sınıfının yöntemlerinin çoğu, vektörün içeriği veya boyutu her değiştiğinde bu yöntemlerin bir ListDataEvent tetiklemesi eklenmiş (ve gerekli) özelliğiyle Vector’ün yöntemleriyle aynıdır.

Burada bazı Vector kavramlarını kısaca gözden geçirmeliyiz. Vector, gerektiğinde kapasite olarak büyüyebilen veya küçülebilen bir dizi nesneyi tutar. Vektörün boyutu, o anda içerdiği öğe miktarıdır, vektörün kapasitesi ise vektörün kendisi için daha fazla alan ayırmadan önce tutabileceği maksimum öğe sayısıdır. Kapasite tipik olarak boyuttan daha büyüktür; ancak bir Vektör, kapasitesini komut üzerine boyutuna uyacak şekilde kırpabilir.


Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır. 

1) Backlink Paketi  50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)


 

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

× Bize Whatsapp'tan Ulaşın