Tekil Mesaj gösterimi
Alt 12 Nisan 2012, 12:04   #1
Çevrimdışı
YazılımMimarı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Java'da JTree Kullanimi




Swing arayüz kütüphanesine ait JTree sınıfı ağaç şeklinde verileri göstermeye yarıyor. Bunun için MVC'ye uygun olarak TreeModel kullanılıyor.

TreeModel ve TreeNodeModel
Java'nın Swing kütüphanesi MVC (Model-View-Controller / Model - Görünüş - Denetleyici) desenine uygun olarak arayüzle veriyi ayrı bir biçimde ele alır. Ağaç tipinde bir verinin her düğümü TreeNode arayüzüyle, ağacın kendisi de TreeModel arayüzüyle tanımlıdır. Programcı isterse bunlar kendisi de gerçekleştirebilir ancak hazır gerçekleştirilmiş data nesnesi olarak DefaultMutableTreeNode ve DefaultTreeModel sınıfları bulunmaktadır.
Ağaç üzerinde bir düğüm olluşturmak için

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
DefaultMutableTreeNode node=new DefaultMutableTreeNode("Düğüm Adı");

biçiminde bir kod parçası yazılır. En tepedeki düğüm (kök) ve en uçtaki düğüm (yaprak) düğümleri de aynı biçimde tanımlanır. Bir düğimin altına düğüm eklemek için

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
DefaultMutableTreeNode node=new DefaultMutableTreeNode("Düğüm Adı"); DefaultMutableTreeNode subnode=new DefaultMutableTreeNode("Alt Düğüm Adı"); node.add(subnode);

şeklinde bir kod parçası yazılır.

Bir ağaç modeli oluşturmak için en tepedeki (kök) düğümü vermek yeterlidir :

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
DefaultTreeModel model=new DefaultTreeModel(root);

Bu modeli JTree nesnesine parametre olarak aktarılırsa

Kod:   Kodu kopyalamak için üzerine çift tıklayın!
JTree tree=new JTree(model);

bir açaç nesnesi kullanıma hazır olur.


Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Kod:   Kodu kopyalamak için üzerine çift tıklayın!
import javax.swing.*; import javax.swing.tree.*; import java.awt.*; public class TreeTest extends JFrame{ public TreeTest(){ DefaultMutableTreeNode general= new DefaultMutableTreeNode("Genel Müdürlük"); DefaultMutableTreeNode marketing= new DefaultMutableTreeNode("Pazarlama Bölümü"); DefaultMutableTreeNode aliyilmaz= new DefaultMutableTreeNode("Ali Yılmaz"); DefaultMutableTreeNode alisatar= new DefaultMutableTreeNode("Ali Satar"); DefaultMutableTreeNode production= new DefaultMutableTreeNode("Üretim"); DefaultMutableTreeNode velikaya= new DefaultMutableTreeNode("Veli Kaya"); DefaultMutableTreeNode metinselim= new DefaultMutableTreeNode("Metin Selim"); general.add(marketing); general.add(production); marketing.add(aliyilmaz); mark.add(alisatar); production.add(velikaya); production.add(metinselim); DefaultTreeModel model=new DefaultTreeModel(general); JTree tree=new JTree(model); getContentPane().add(new JScrollPane(tree)); } public static void main(String[] args){ TreeTest test=new TreeTest(); test.setBounds(100,100,300,300); test.setVisible(true); } }

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]


Konu YazılımMimarı tarafından (17 Şubat 2013 Saat 20:01 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları reklam ver Benimmekan Mobil Sohbet