<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    kooyee ‘s blog

    開源軟件, 眾人努力的結(jié)晶, 全人類的共同財(cái)富
    posts - 103, comments - 55, trackbacks - 0, articles - 66
       :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    【JTabbedPane】tab change事件

    Posted on 2008-03-08 00:50 kooyee 閱讀(1886) 評論(0)  編輯  收藏 所屬分類: Swing/Applet
    tab change 事件, 使用到StateChanged Event
    import java.awt.*;
    import java.awt.event.*;
    import java.util.StringTokenizer;
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.event.TreeSelectionEvent;
    import javax.swing.event.TreeSelectionListener;
    import javax.swing.text.JTextComponent;
    import javax.swing.tree.DefaultMutableTreeNode;
    import javax.swing.tree.TreePath;
     
    public class SelectableTree extends JFrame
    implements TreeSelectionListener,ChangeListener
    {
     
       
    protected Component makeJTreePanel(JTree tree)
       
    {
          JPanel panel 
    = new JPanel(false);
          panel.setLayout(
    new GridLayout(11));
          panel.add(
    new JScrollPane(tree));
          
    return panel;
       }

     
       
    protected JTree makeJTree(String text)
       
    {
          DefaultMutableTreeNode root 
                   
    = new DefaultMutableTreeNode(text);
          
    for(int i = 0; i < 4; i++)
          
    {
             DefaultMutableTreeNode child 
                   
    = new DefaultMutableTreeNode(text + i);
             
    for(int j = 0; j < 4; j++)
                child.add(
    new DefaultMutableTreeNode(text + i + j));
             root.add(child);
          }

     
          JTree tree 
    = new JTree(root);
          tree.addTreeSelectionListener(
    this);
          
    return tree;
       }

     
       
    public void valueChanged(TreeSelectionEvent event)
       
    {
          String temp 
    = event.getPath().toString();
          
    for(StringTokenizer token = new StringTokenizer(temp, ","); token.hasMoreTokens();)
             temp 
    = token.nextToken();
          textArea.setText(
    "Current Selection: " + temp.substring(0, temp.length() - 1));
       }

     
       
    /**Sole method of ChangeListener*/
       
    public void stateChanged(ChangeEvent e)
       
    {
            DefaultSingleSelectionModel dSM 
                    
    = (DefaultSingleSelectionModel)e.getSource();
          
    int index = dSM.getSelectedIndex();
            String tabName 
    = tabbedPane.getTitleAt(index);
            
    /** I imagine you will do more than this*/
            
    if(textArea != null)
                textArea.setText(
    "Tab Selected: " + tabName);
            
       }

       
    /****************************************/
       
       
    public SelectableTree()
       
    {
          
    super("ECHO Service Demo");
          
    //WindowUtilities.setNativeLookAndFeel();
          
    //addWindowListener(new ExitListener());
          setDefaultCloseOperation(EXIT_ON_CLOSE);
          Container content 
    = getContentPane();
          tabbedPane 
    = new JTabbedPane();
          
          
    /**add ChangeListener to Model*/
          tabbedPane.getModel().addChangeListener(
    this);
          
    /*******************************************/
          
          Component panel1 
    = makeJTreePanel(makeJTree("Taxonomy1"));
          tabbedPane.addTab(
    "Taxonomy1"null, panel1, null);
          tabbedPane.setSelectedIndex(
    0);
          Component panel2 
    = makeJTreePanel(makeJTree("Taxonomy2"));
          tabbedPane.addTab(
    "Taxonomy2"null, panel2, null);
          Component panel3 
    = makeJTreePanel(makeJTree("Taxonomy3"));
          tabbedPane.addTab(
    "Taxonomy3"null, panel3, null);
          Component panel4 
    = makeJTreePanel(makeJTree("Taxonomy4"));
          tabbedPane.addTab(
    "Taxonomy4"null, panel4, null);
          content.add(tabbedPane, 
    "Center");
          textArea 
    = new JTextArea("Services of Current Category: NONE");
          content.add(textArea, 
    "South");
          setSize(
    350375);
          setVisible(
    true);
          }

     
          
    public static void main(String args[])
          
    {
             
    new SelectableTree().setVisible(true);
          }

     
    private JTabbedPane tabbedPane;
    private JTextArea textArea;
    }


    主站蜘蛛池模板: 久久久久久a亚洲欧洲aⅴ| 18禁在线无遮挡免费观看网站| 亚洲精品无码精品mV在线观看| 女性无套免费网站在线看| 九九精品成人免费国产片| 猫咪免费人成网站在线观看入口 | 色婷婷综合缴情综免费观看 | 一区二区三区观看免费中文视频在线播放 | 亚洲国产精品无码av| 亚洲精品国产日韩无码AV永久免费网| 免费观看的毛片大全| 精品熟女少妇av免费久久| 久久免费精品一区二区| A国产一区二区免费入口| 激情吃奶吻胸免费视频xxxx| 国产精品亚洲专区在线观看| 亚洲精品无码久久毛片波多野吉衣| 久久精品国产亚洲网站| 亚洲午夜福利AV一区二区无码| 亚洲午夜av影院| 亚洲成人影院在线观看| 免费一看一级毛片| 又粗又硬又大又爽免费视频播放| 搡女人免费视频大全| 成人性生免费视频| 天天看片天天爽_免费播放| 成年女性特黄午夜视频免费看| 国拍在线精品视频免费观看| 亚洲国产精品免费在线观看| 精品无码AV无码免费专区| 精品熟女少妇a∨免费久久| 0588影视手机免费看片| 免费AA片少妇人AA片直播| 久草视频免费在线| 成人免费无码大片a毛片| 在线免费观看一级毛片| 国产免费看插插插视频| 亚洲 小说区 图片区 都市| 亚洲国产综合久久天堂| 亚洲中文字幕在线第六区| 久久久青草青青亚洲国产免观|