⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 searchresultstable.java

📁 基于jxta的局域网P2P文件共享,可以实现局域网中的文件p2p共享,实现文件快速传输及交流
💻 JAVA
字号:
package connex.app.wsUI;

import java.awt.*;

import javax.swing.*;
import javax.swing.event.*;

import net.jxta.protocol.PeerGroupAdvertisement;
import connex.app.utils.TableUtils.MyTableModel;


/**
 * <p>Title: </p>
 *
 * <p>Description: </p>
 *
 * <p>Copyright: Copyright (c) 2005</p>
 *
 * <p>Company: </p>
 *
 * @author not attributable
 * @version 1.0
 */
public class SearchResultsTable extends JLabel {

    int selectedRow=-1;
    PeerGroupAdvertisement pgAdv;
    BorderLayout borderLayout1 = new BorderLayout();
    String[] coulumnName = {"Name", "Description"};

    MyTableModel tm = new MyTableModel(coulumnName);
    GroupRow gr = null;
    JTable jTable1 = new JTable(tm);
    JScrollPane jScrollPane1 = new JScrollPane();


    public SearchResultsTable() {
        try {
            jbInit();
        } catch (Exception exception) {
            exception.printStackTrace();
        }
    }

    private void jbInit() throws Exception {

        this.setLayout(borderLayout1);
        this.setBackground(SystemColor.textHighlightText);
        this.setOpaque(true);
        this.setHorizontalAlignment(SwingConstants.RIGHT);
        ;
        this.setVerticalAlignment(SwingConstants.BOTTOM);
        jTable1.setForeground(SystemColor.controlDkShadow);
        jTable1.setOpaque(false);
        jTable1.setGridColor(SystemColor.inactiveCaption);
        jTable1.setIntercellSpacing(new Dimension(2, 1));
        jTable1.setRowHeight(20);
        jScrollPane1.setOpaque(false);
        this.add(jScrollPane1, java.awt.BorderLayout.CENTER);

        ListSelectionModel rowSM = jTable1.getSelectionModel();
        rowSM.addListSelectionListener(new MyListSelectionListener1(this));

        jScrollPane1.getViewport().setOpaque(false);
        jScrollPane1.getViewport().add(jTable1);

    }


    /**
     * getSelectedContent
     */
    public PeerGroupAdvertisement getSelectedAdv() {

            return ((GroupRow) tm.getRow(selectedRow)).getAdvertisement();

    }

    public void addResult(PeerGroupAdvertisement adv) {
        gr = new GroupRow(adv);

        if (tm.getRow(gr.getID()) == null) {

            tm.addRow(gr);
        }
    }

    public MyTableModel getModel() {
        return tm;
    }

    public int getSelectedRowIndex() {
        return selectedRow;
    }

    public GroupRow getSelectedRow() {
        return (GroupRow) tm.getRow(selectedRow);
    }


    public void resT_Selection(ListSelectionEvent e) {
        //Ignore extra messages.
        if (e.getValueIsAdjusting()) {
            return;
        }

        ListSelectionModel lsm =
                (ListSelectionModel) e.getSource();
        if (lsm.isSelectionEmpty()) {
            //no rows are selected
        } else {
            selectedRow = lsm.getMinSelectionIndex();

            //selectedRow is selected

        }

    }
}


class MyListSelectionListener1 implements ListSelectionListener {
    private SearchResultsTable adaptee;

    MyListSelectionListener1(SearchResultsTable adaptee) {
        this.adaptee = adaptee;
    }

    public void valueChanged(ListSelectionEvent e) {
        adaptee.resT_Selection(e);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -