<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 閱讀(461) | 評論 (0)編輯 收藏

    僅列出標題  
    主站蜘蛛池模板: 亚洲Av无码乱码在线观看性色| 久久经典免费视频| 在线观看免费中文视频| 四虎在线免费视频| 日韩成人在线免费视频| 亚洲一区二区三区在线视频| 国产l精品国产亚洲区在线观看| 久久精品国产亚洲av影院| 亚洲国产成人精品激情| 男男gay做爽爽免费视频| japanese色国产在线看免费| 日韩电影免费在线观看中文字幕 | MM1313亚洲国产精品| 国产乱子伦精品免费视频| 一级毛片aaaaaa免费看| 成人免费无毒在线观看网站| 亚洲日本韩国在线| 精品亚洲aⅴ在线观看| 亚洲妇女无套内射精| a级特黄毛片免费观看| 国产1000部成人免费视频| 亚洲av麻豆aⅴ无码电影| 亚洲综合一区二区国产精品| 亚洲av无码兔费综合| 青青草原1769久久免费播放| 妞干网免费观看视频| 精品亚洲一区二区| 国产亚洲sss在线播放| 四虎精品免费永久免费视频| 免费观看一区二区三区| 91精品免费在线观看| 亚洲AV无码之日韩精品| 国产成人无码区免费A∨视频网站 国产成人涩涩涩视频在线观看免费 | 亚洲欭美日韩颜射在线二| 亚洲资源在线观看| 亚洲中文字幕无码中文字| 国产99精品一区二区三区免费 | 美女视频黄a视频全免费网站色窝 美女被cao网站免费看在线看 | 亚洲一区免费视频| 午夜国产精品免费观看| 99精品国产免费久久久久久下载|