亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? basictableheaderui.java

?? JAVA的一些源碼 JAVA2 STANDARD EDITION DEVELOPMENT KIT 5.0
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
        installKeyboardActions();    }    /**     * Initialize JTableHeader properties, e.g. font, foreground, and background.     * The font, foreground, and background properties are only set if their     * current value is either null or a UIResource, other properties are set     * if the current value is null.     *     * @see #installUI     */    protected void installDefaults() {        LookAndFeel.installColorsAndFont(header, "TableHeader.background",                                         "TableHeader.foreground", "TableHeader.font");        LookAndFeel.installProperty(header, "opaque", Boolean.TRUE);    }    /**     * Attaches listeners to the JTableHeader.     */    protected void installListeners() {        mouseInputListener = createMouseInputListener();        header.addMouseListener(mouseInputListener);        header.addMouseMotionListener(mouseInputListener);    }    /**     * Register all keyboard actions on the JTableHeader.     */    protected void installKeyboardActions() { }// Uninstall methods    public void uninstallUI(JComponent c) {        uninstallDefaults();        uninstallListeners();        uninstallKeyboardActions();        header.remove(rendererPane);        rendererPane = null;        header = null;    }    protected void uninstallDefaults() {}    protected void uninstallListeners() {        header.removeMouseListener(mouseInputListener);        header.removeMouseMotionListener(mouseInputListener);        mouseInputListener = null;    }    protected void uninstallKeyboardActions() {}//// Paint Methods and support//    public void paint(Graphics g, JComponent c) {	if (header.getColumnModel().getColumnCount() <= 0) { 	    return; 	}        boolean ltr = header.getComponentOrientation().isLeftToRight();	Rectangle clip = g.getClipBounds();         Point left = clip.getLocation();        Point right = new Point( clip.x + clip.width - 1, clip.y );	TableColumnModel cm = header.getColumnModel();         int cMin = header.columnAtPoint( ltr ? left : right );        int cMax = header.columnAtPoint( ltr ? right : left );        // This should never happen.         if (cMin == -1) {	    cMin =  0;        }        // If the table does not have enough columns to fill the view we'll get -1.        // Replace this with the index of the last column.        if (cMax == -1) {	    cMax = cm.getColumnCount()-1;          }	TableColumn draggedColumn = header.getDraggedColumn(); 	int columnWidth;        Rectangle cellRect = header.getHeaderRect(ltr ? cMin : cMax); 	TableColumn aColumn;	if (ltr) {	    for(int column = cMin; column <= cMax ; column++) { 		aColumn = cm.getColumn(column); 		columnWidth = aColumn.getWidth();		cellRect.width = columnWidth;		if (aColumn != draggedColumn) {		    paintCell(g, cellRect, column);		} 		cellRect.x += columnWidth;	    }	} else {	    for(int column = cMax; column >= cMin; column--) {		aColumn = cm.getColumn(column);		columnWidth = aColumn.getWidth();		cellRect.width = columnWidth;		if (aColumn != draggedColumn) {		    paintCell(g, cellRect, column);		}                cellRect.x += columnWidth;	    }	}         // Paint the dragged column if we are dragging.         if (draggedColumn != null) {             int draggedColumnIndex = viewIndexForColumn(draggedColumn); 	    Rectangle draggedCellRect = header.getHeaderRect(draggedColumnIndex);                         // Draw a gray well in place of the moving column.             g.setColor(header.getParent().getBackground());            g.fillRect(draggedCellRect.x, draggedCellRect.y,                               draggedCellRect.width, draggedCellRect.height);            draggedCellRect.x += header.getDraggedDistance();	    // Fill the background. 	    g.setColor(header.getBackground());	    g.fillRect(draggedCellRect.x, draggedCellRect.y,		       draggedCellRect.width, draggedCellRect.height);             paintCell(g, draggedCellRect, draggedColumnIndex);        }	// Remove all components in the rendererPane. 	rendererPane.removeAll();     }    private Component getHeaderRenderer(int columnIndex) {         TableColumn aColumn = header.getColumnModel().getColumn(columnIndex); 	TableCellRenderer renderer = aColumn.getHeaderRenderer();         if (renderer == null) { 	    renderer = header.getDefaultRenderer(); 	}	return renderer.getTableCellRendererComponent(header.getTable(), 						aColumn.getHeaderValue(), false, false,                                                 -1, columnIndex);    }    private void paintCell(Graphics g, Rectangle cellRect, int columnIndex) {        Component component = getHeaderRenderer(columnIndex);         rendererPane.paintComponent(g, component, header, cellRect.x, cellRect.y,                            cellRect.width, cellRect.height, true);    }    private int viewIndexForColumn(TableColumn aColumn) {        TableColumnModel cm = header.getColumnModel();        for (int column = 0; column < cm.getColumnCount(); column++) {            if (cm.getColumn(column) == aColumn) {                return column;            }        }        return -1;    }//// Size Methods//    private int getHeaderHeight() {        int height = 0; 	boolean accomodatedDefault = false;         TableColumnModel columnModel = header.getColumnModel();        for(int column = 0; column < columnModel.getColumnCount(); column++) { 	    TableColumn aColumn = columnModel.getColumn(column); 	    // Configuring the header renderer to calculate its preferred size is expensive. 	    // Optimise this by assuming the default renderer always has the same height. 	    if (aColumn.getHeaderRenderer() != null || !accomodatedDefault) { 		Component comp = getHeaderRenderer(column); 		int rendererHeight = comp.getPreferredSize().height; 		height = Math.max(height, rendererHeight); 		// If the header value is empty (== "") in the 		// first column (and this column is set up 		// to use the default renderer) we will 		// return zero from this routine and the header 		// will disappear altogether. Avoiding the calculation 		// of the preferred size is such a performance win for 		// most applications that we will continue to 		// use this cheaper calculation, handling these 		// issues as `edge cases'. 		if (rendererHeight > 0) { 		    accomodatedDefault = true; 		}	    }        }        return height;    }    private Dimension createHeaderSize(long width) {        TableColumnModel columnModel = header.getColumnModel();        // None of the callers include the intercell spacing, do it here.        if (width > Integer.MAX_VALUE) {            width = Integer.MAX_VALUE;        }        return new Dimension((int)width, getHeaderHeight());    }    /**     * Return the minimum size of the header. The minimum width is the sum      * of the minimum widths of each column (plus inter-cell spacing).     */    public Dimension getMinimumSize(JComponent c) {        long width = 0;        Enumeration enumeration = header.getColumnModel().getColumns();        while (enumeration.hasMoreElements()) {            TableColumn aColumn = (TableColumn)enumeration.nextElement();            width = width + aColumn.getMinWidth();        }        return createHeaderSize(width);    }    /**     * Return the preferred size of the header. The preferred height is the      * maximum of the preferred heights of all of the components provided      * by the header renderers. The preferred width is the sum of the      * preferred widths of each column (plus inter-cell spacing).     */    public Dimension getPreferredSize(JComponent c) {        long width = 0;        Enumeration enumeration = header.getColumnModel().getColumns();        while (enumeration.hasMoreElements()) {            TableColumn aColumn = (TableColumn)enumeration.nextElement();            width = width + aColumn.getPreferredWidth();        }        return createHeaderSize(width);    }    /**     * Return the maximum size of the header. The maximum width is the sum      * of the maximum widths of each column (plus inter-cell spacing).     */    public Dimension getMaximumSize(JComponent c) {        long width = 0;        Enumeration enumeration = header.getColumnModel().getColumns();        while (enumeration.hasMoreElements()) {            TableColumn aColumn = (TableColumn)enumeration.nextElement();            width = width + aColumn.getMaxWidth();        }        return createHeaderSize(width);    }}  // End of Class BasicTableHeaderUI

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
97久久精品人人做人人爽| 久久影视一区二区| 久久久亚洲高清| 一区二区三区在线影院| 国产裸体歌舞团一区二区| 在线观看网站黄不卡| 欧美国产一区在线| 韩国一区二区视频| 欧美精品久久久久久久多人混战 | 亚洲图片欧美色图| 国产v综合v亚洲欧| 欧美成人精品福利| 亚洲aaa精品| 欧美性大战xxxxx久久久| 国产精品久久久久9999吃药| 国产麻豆精品在线| 日韩免费性生活视频播放| 一区二区三区在线视频免费| 国产一区999| 精品日产卡一卡二卡麻豆| 午夜免费久久看| 欧美最猛黑人xxxxx猛交| 亚洲欧美日韩国产成人精品影院| 欧美三级日韩三级| 亚洲靠逼com| 91婷婷韩国欧美一区二区| 亚洲视频电影在线| caoporn国产精品| 欧美国产日本韩| 国产传媒久久文化传媒| 亚洲精品一区二区三区蜜桃下载 | 亚洲bdsm女犯bdsm网站| 欧美午夜精品理论片a级按摩| 亚洲欧洲国产日韩| av在线不卡电影| 亚洲欧美一区二区久久| 色8久久人人97超碰香蕉987| 亚洲日本va在线观看| 在线视频一区二区免费| 亚洲国产va精品久久久不卡综合 | 国产拍欧美日韩视频二区| 国产精品一二三四区| 欧美激情一区二区三区蜜桃视频| 国产福利不卡视频| 中文字幕成人av| 在线视频中文字幕一区二区| 日韩精品成人一区二区在线| 亚洲国产视频一区二区| 色妹子一区二区| 国产精品久久久久久久久晋中| 成人禁用看黄a在线| 国产在线播精品第三| 久久久影视传媒| 91麻豆swag| 日韩精品一区第一页| 久久午夜色播影院免费高清| 成人在线视频首页| 亚洲国产cao| 久久久欧美精品sm网站| 91麻豆精品一区二区三区| 五月天久久比比资源色| 欧美精品一区二区三区一线天视频| 国产91露脸合集magnet | 久草精品在线观看| 国产精品久久久爽爽爽麻豆色哟哟 | 欧美挠脚心视频网站| 黄色日韩三级电影| 一级中文字幕一区二区| 精品日韩av一区二区| 色综合天天做天天爱| 免费观看30秒视频久久| 亚洲欧美日韩国产手机在线 | 欧美日本国产视频| 国产一区二区三区视频在线播放| 亚洲婷婷国产精品电影人久久| 欧美高清视频不卡网| 国产不卡在线一区| 日韩精品亚洲一区二区三区免费| 欧美精彩视频一区二区三区| 欧美精品v国产精品v日韩精品| 国产精品538一区二区在线| 亚洲激情六月丁香| 国产午夜亚洲精品理论片色戒| 欧美在线色视频| a级精品国产片在线观看| 日本成人中文字幕在线视频| 亚洲色图在线看| 久久久久久99精品| 欧美一二区视频| 欧美在线制服丝袜| 91在线porny国产在线看| 极品少妇xxxx精品少妇| 婷婷久久综合九色综合绿巨人 | 亚洲成av人片在线| 最新久久zyz资源站| 久久久久久久久伊人| 日韩精品自拍偷拍| 欧美一区二区精品久久911| 在线视频一区二区三区| 色婷婷av一区二区三区大白胸| 国产福利91精品一区二区三区| 久久不见久久见中文字幕免费| 亚洲综合图片区| 亚洲欧美日韩国产手机在线 | 欧美—级在线免费片| 久久婷婷成人综合色| 日韩欧美一级特黄在线播放| 欧美日韩成人高清| 欧美日韩国产色站一区二区三区| 色综合咪咪久久| 91啪九色porn原创视频在线观看| 成人中文字幕电影| 成人激情黄色小说| 成人免费视频免费观看| 本田岬高潮一区二区三区| 成人三级伦理片| 91蜜桃在线免费视频| 色婷婷av一区| 欧美日韩美少妇| 欧美一级淫片007| 久久亚洲精品小早川怜子| 国产亚洲一区二区三区| 国产欧美综合色| 亚洲欧洲一区二区三区| 亚洲人成人一区二区在线观看 | 亚洲国产精品成人综合| 国产精品情趣视频| 亚洲精品乱码久久久久久黑人| 亚洲精品日日夜夜| 亚洲va天堂va国产va久| 美女mm1313爽爽久久久蜜臀| 一本久久综合亚洲鲁鲁五月天| 欧美天堂一区二区三区| 91精品午夜视频| 欧美成人vr18sexvr| 欧美国产在线观看| 一区二区三区高清在线| 人人狠狠综合久久亚洲| 国产iv一区二区三区| 色一区在线观看| 日韩一区二区精品葵司在线| 欧美国产亚洲另类动漫| 亚洲一区二区影院| 久久国产成人午夜av影院| 成人精品视频一区二区三区尤物| 91年精品国产| 欧美成人国产一区二区| 专区另类欧美日韩| 青青青爽久久午夜综合久久午夜 | 色老汉av一区二区三区| 欧美一区二区三区白人| 亚洲欧洲日韩综合一区二区| 午夜视频久久久久久| 成人免费看黄yyy456| 欧美妇女性影城| 国产精品久久久久aaaa| 人人精品人人爱| 色噜噜狠狠一区二区三区果冻| 日韩精品一区二区三区视频| 亚洲天堂久久久久久久| 丝袜诱惑亚洲看片| 91老司机福利 在线| 久久九九全国免费| 青青国产91久久久久久| 色综合久久久久网| 欧美国产欧美综合| 蜜桃av噜噜一区二区三区小说| 色婷婷av一区二区三区gif| 久久午夜电影网| 日本成人在线电影网| 色综合久久综合中文综合网| 国产亚洲人成网站| 男人的天堂久久精品| 欧美吞精做爰啪啪高潮| 国产精品天干天干在观线| 91麻豆.com| 亚洲欧洲精品天堂一级| 国产精品自拍毛片| 精品国产乱码久久久久久老虎| 亚洲国产精品综合小说图片区| jlzzjlzz亚洲女人18| 久久久久久久久久久久电影| 久久精品免费观看| 欧美日韩情趣电影| 亚洲精品国产一区二区精华液 | 九九精品视频在线看| 欧美日韩免费电影| 一区二区三区欧美日韩| 成人黄色免费短视频| 国产日韩欧美不卡| 国产成人在线网站| 久久日一线二线三线suv| 久久97超碰国产精品超碰| 欧美一区二区三区在线视频| 日韩av不卡一区二区| 欧美天天综合网| 婷婷激情综合网| 欧美一区二区三区日韩| 日韩国产欧美在线播放| 欧美一级爆毛片|