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

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

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

    JAVA

    JAVA開發

    2012年7月30日 #

    JAVA SWING自定義行列標題的滾動面板示例

    JScrollPane有以下兩個方法 setColumnHeaderView(Component view) setRowHeaderView(Component view) 你可以利用它們, 一個用來顯示表行頭,一個用來顯示列頭

    同例行標題也有.

    package scrollpanel;

    import java.awt.Dimension;
    import java.awt.GridBagConstraints;
    import java.awt.GridBagLayout;
    import java.awt.Insets;
    import java.util.ArrayList;
    import java.util.List;

    import javax.swing.BorderFactory;
    import javax.swing.JDialog;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JScrollPane;
    import javax.swing.JViewport;

    public class CustomScrollDlg extends JDialog {

     private static final long serialVersionUID = 1L;
     private final static int WIDTH = 100;
     private final static int HIGHT = 30;

     private JScrollPane jsp = new JScrollPane();
     private JPanel jpnlColumn = new JPanel();
     private JPanel jpnlRow = new JPanel();
     private JPanel jpnlContent = new JPanel();
     private Dimension dim = new Dimension(WIDTH, HIGHT);
     private int total = 20;

     public CustomScrollDlg() {
      setTitle("JAVA SWING自定義行列標題的滾動面板示例");
      setSize(600, 500);
      setLocation(200, 100);
      init();
     }

     private void init() {
      jpnlContent.setLayout(new GridBagLayout());
      jpnlColumn.setLayout(new GridBagLayout());
      jpnlRow.setLayout(new GridBagLayout());

      List<JLabel> colList = getLabelList(total);
      List<JLabel> rowList = getLabelList(total);
      JLabel lbl = null;
      for (int i = 0; i < total; i++) {
       lbl = colList.get(i);
       jpnlColumn.add(lbl, new GridBagConstraints(i, 0, 1, 1, 0, 0,
         GridBagConstraints.EAST, GridBagConstraints.NONE,
         new Insets(0, 0, 0, 0), 0, 0));

       lbl = rowList.get(i);
       jpnlRow.add(lbl, new GridBagConstraints(0, i, 1, 1, 0, 0,
         GridBagConstraints.NORTH, GridBagConstraints.NONE,
         new Insets(0, 0, 0, 0), 0, 0));
      }

      jpnlContent.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0));
      jpnlContent
        .setPreferredSize(new Dimension(WIDTH * total, HIGHT * total));
      jsp.getViewport().add(jpnlContent);

      JViewport colVP = new JViewport();
      colVP.setView(jpnlColumn);
      jsp.setColumnHeader(colVP);

      JViewport rowVP = new JViewport();
      rowVP.setView(jpnlRow);
      jsp.setRowHeader(rowVP);

      JLabel title = getLabel("Title");
      jsp.setCorner(JScrollPane.UPPER_LEFT_CORNER, title);
      jsp.setCorner(JScrollPane.LOWER_LEFT_CORNER, getLabel("****"));
      jsp.setCorner(JScrollPane.UPPER_RIGHT_CORNER, getLabel("**"));

      getContentPane().add(jsp);

     }

     private JLabel getLabel(String text) {
      JLabel lbl = new JLabel(text);
      lbl.setPreferredSize(dim);
      lbl.setMaximumSize(dim);
      lbl.setMinimumSize(dim);
      lbl.setBorder(BorderFactory.createEtchedBorder());
      return lbl;
     }

     private List<JLabel> getLabelList(int count) {
      List<JLabel> list = new ArrayList<JLabel>();
      for (int i = 0; i < count; i++) {
       list.add(getLabel(" JLabel" + i));
      }

      return list;
     }

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

    }

    posted @ 2012-07-30 20:50 caoyong 閱讀(462) | 評論 (0)編輯 收藏

    主站蜘蛛池模板: 亚洲精品中文字幕无码AV| 亚洲欧洲国产精品你懂的| 亚洲av无一区二区三区| 一二三四在线播放免费观看中文版视频| 亚洲成熟xxxxx电影| 8x8×在线永久免费视频| 亚洲高清中文字幕综合网| 中国xxxxx高清免费看视频| 亚洲精品无码久久久久久久| 59pao成国产成视频永久免费| 亚洲经典在线中文字幕| 7723日本高清完整版免费| 亚洲精品无码国产片| 免费国产高清视频| 成人特级毛片69免费观看| 中文亚洲AV片在线观看不卡| a级片免费观看视频| 久久精品国产亚洲AV无码麻豆| 亚洲免费视频播放| 亚洲乱妇熟女爽到高潮的片 | 国产妇乱子伦视频免费| 色老板亚洲视频免在线观| 免费无码又爽又刺激高潮| 一级做a爰片久久毛片免费看 | 无码国产精品一区二区免费式直播| 亚洲字幕在线观看| 国产在线观看免费完整版中文版| 免费国产a理论片| 亚洲福利视频一区| 一个人免费观看www视频在线| 日韩一级片免费观看| 亚洲av无码国产精品夜色午夜| 成年黄网站色大免费全看| 成在线人直播免费视频| 91亚洲国产成人久久精品网站| 国产在线19禁免费观看| 久久久久久久99精品免费观看| 久久久久久亚洲精品影院| 久久久久亚洲AV成人网| 免费在线观看h片| 国产精品福利片免费看|