IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   Java (https://www.ircforumlari.net/java/)
-   -   Java'da JTree Kullanimi (https://www.ircforumlari.net/java/472520-javada-jtree-kullanimi.html)

YazılımMimarı 12 Nisan 2012 12:04

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:

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:

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:

DefaultTreeModel model=new DefaultTreeModel(root);
Bu modeli JTree nesnesine parametre olarak aktarılırsa

Kod:

JTree tree=new JTree(model);
bir açaç nesnesi kullanıma hazır olur.

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

Kod:

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...]


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 07:46.

Powered by vBulletin® Version 3.8.8 Beta 3
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2024 IRCForumlari.Net