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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? basictableheaderui.java

?? java1.6眾多例子參考
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/* * @(#)BasicTableHeaderUI.java	1.78 07/07/16 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package javax.swing.plaf.basic;import java.awt.*;import java.awt.event.*;import java.util.*;import javax.swing.*;import javax.swing.event.*;import javax.swing.plaf.*;import javax.swing.table.*;import sun.swing.*;/** * BasicTableHeaderUI implementation * * @version 1.78 07/16/07 * @author Alan Chung * @author Philip Milne */public class BasicTableHeaderUI extends TableHeaderUI {    private static Cursor resizeCursor = Cursor.getPredefinedCursor(Cursor.E_RESIZE_CURSOR); //// Instance Variables//    /** The JTableHeader that is delegating the painting to this UI. */    protected JTableHeader header;    protected CellRendererPane rendererPane;    // Listeners that are attached to the JTable    protected MouseInputListener mouseInputListener;    // The column header over which the mouse currently is.    private int rolloverColumn = -1;        // The column that should be highlighted when the table header has the focus.    private int selectedColumnIndex = 0; // Read ONLY via getSelectedColumnIndex!    private static FocusListener focusListener = new FocusListener() {        public void focusGained(FocusEvent e) {            repaintHeader(e.getSource());        }                public void focusLost(FocusEvent e) {            repaintHeader(e.getSource());        }                private void repaintHeader(Object source) {            if (source instanceof JTableHeader) {                JTableHeader th = (JTableHeader)source;                BasicTableHeaderUI ui =                    (BasicTableHeaderUI)BasicLookAndFeel.                                        getUIOfType(th.getUI(),                                            BasicTableHeaderUI.class);                if (ui == null) {                    return;                }                th.repaint(th.getHeaderRect(ui.getSelectedColumnIndex()));            }        }    };        /**     * This inner class is marked &quot;public&quot; due to a compiler bug.     * This class should be treated as a &quot;protected&quot; inner class.     * Instantiate it only within subclasses of BasicTableUI.     */    public class MouseInputHandler implements MouseInputListener {        private int mouseXOffset; 	private Cursor otherCursor = resizeCursor;         public void mouseClicked(MouseEvent e) {            if (e.getClickCount() % 2 == 1 &&                    SwingUtilities.isLeftMouseButton(e)){                JTable table = header.getTable();                RowSorter sorter = table.getRowSorter();                if (sorter != null) {                    int columnIndex = header.columnAtPoint(e.getPoint());                    if (columnIndex != -1) {                        columnIndex = table.convertColumnIndexToModel(                                            columnIndex);                        sorter.toggleSortOrder(columnIndex);                    }                }            }        }        private TableColumn getResizingColumn(Point p) { 	    return getResizingColumn(p, header.columnAtPoint(p)); 	}        private TableColumn getResizingColumn(Point p, int column) {             if (column == -1) {                  return null;             }	    Rectangle r = header.getHeaderRect(column); 	    r.grow(-3, 0); 	    if (r.contains(p)) { 		return null; 	    }	    int midPoint = r.x + r.width/2; 	    int columnIndex;            if( header.getComponentOrientation().isLeftToRight() ) {                columnIndex = (p.x < midPoint) ? column - 1 : column;             } else {                columnIndex = (p.x < midPoint) ? column : column - 1;             }	    if (columnIndex == -1) { 		return null; 	    }	    return header.getColumnModel().getColumn(columnIndex);         }        public void mousePressed(MouseEvent e) {            header.setDraggedColumn(null);            header.setResizingColumn(null);            header.setDraggedDistance(0);            Point p = e.getPoint();            // First find which header cell was hit            TableColumnModel columnModel = header.getColumnModel();            int index = header.columnAtPoint(p);            if (index != -1) {                // The last 3 pixels + 3 pixels of next column are for resizing                TableColumn resizingColumn = getResizingColumn(p, index);                 if (canResize(resizingColumn, header)) {                    header.setResizingColumn(resizingColumn);                     if( header.getComponentOrientation().isLeftToRight() ) {                        mouseXOffset = p.x - resizingColumn.getWidth();                     } else {                        mouseXOffset = p.x + resizingColumn.getWidth();                     }                }                else if (header.getReorderingAllowed()) {                    TableColumn hitColumn = columnModel.getColumn(index);                    header.setDraggedColumn(hitColumn);		    mouseXOffset = p.x;                 }            }            if (header.getReorderingAllowed()) {                int oldRolloverColumn = rolloverColumn;                rolloverColumn = -1;                rolloverColumnUpdated(oldRolloverColumn, rolloverColumn);            }        }	private void swapCursor() { 	    Cursor tmp = header.getCursor(); 	    header.setCursor(otherCursor); 	    otherCursor = tmp; 	}        public void mouseMoved(MouseEvent e) {             if (canResize(getResizingColumn(e.getPoint()), header) != 		(header.getCursor() == resizeCursor)) {                swapCursor();            }            updateRolloverColumn(e);       }        public void mouseDragged(MouseEvent e) {            int mouseX = e.getX();            TableColumn resizingColumn  = header.getResizingColumn();            TableColumn draggedColumn  = header.getDraggedColumn();            boolean headerLeftToRight = header.getComponentOrientation().isLeftToRight();            if (resizingColumn != null) {		int oldWidth = resizingColumn.getWidth();		int newWidth;		if (headerLeftToRight) {                    newWidth = mouseX - mouseXOffset;                } else  {                    newWidth = mouseXOffset - mouseX;		}                mouseXOffset += changeColumnWidth(resizingColumn, header,                                                  oldWidth, newWidth);            }            else if (draggedColumn != null) {		TableColumnModel cm = header.getColumnModel();		int draggedDistance = mouseX - mouseXOffset;		int direction = (draggedDistance < 0) ? -1 : 1;		int columnIndex = viewIndexForColumn(draggedColumn);		int newColumnIndex = columnIndex + (headerLeftToRight ? direction : -direction); 		if (0 <= newColumnIndex && newColumnIndex < cm.getColumnCount()) {		    int width = cm.getColumn(newColumnIndex).getWidth();		    if (Math.abs(draggedDistance) > (width / 2)) {                        JTable table = header.getTable();			mouseXOffset = mouseXOffset + direction * width; 			header.setDraggedDistance(draggedDistance - direction * width);	                                                //Cache the selected column.                        int selectedIndex = table.convertColumnIndexToModel(                                                        getSelectedColumnIndex());                                                //Now do the move.                        cm.moveColumn(columnIndex, newColumnIndex);                                                //Update the selected index.                        selectColumn(                            table.convertColumnIndexToView(selectedIndex),                             false);                        return;		    }		}		setDraggedDistance(draggedDistance, columnIndex); 	    }            updateRolloverColumn(e);        }        public void mouseReleased(MouseEvent e) { 	    setDraggedDistance(0, viewIndexForColumn(header.getDraggedColumn()));             header.setResizingColumn(null);            header.setDraggedColumn(null);            updateRolloverColumn(e);        }        public void mouseEntered(MouseEvent e) {            updateRolloverColumn(e);        }        public void mouseExited(MouseEvent e) {            int oldRolloverColumn = rolloverColumn;            rolloverColumn = -1;            rolloverColumnUpdated(oldRolloverColumn, rolloverColumn);        }//// Protected & Private Methods//	private void setDraggedDistance(int draggedDistance, int column) {             header.setDraggedDistance(draggedDistance);		    if (column != -1) { 		header.getColumnModel().moveColumn(column, column); 	    }	}    }////  Factory methods for the Listeners//    /**     * Creates the mouse listener for the JTableHeader.     */    protected MouseInputListener createMouseInputListener() {        return new MouseInputHandler();    }    ////  The installation/uninstall procedures and support//    public static ComponentUI createUI(JComponent h) {        return new BasicTableHeaderUI();    }//  Installation    public void installUI(JComponent c) {        header = (JTableHeader)c;        rendererPane = new CellRendererPane();        header.add(rendererPane);        installDefaults();        installListeners();        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() {

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本女优在线视频一区二区| 国产日韩欧美精品电影三级在线| 高潮精品一区videoshd| 男女男精品视频网| 日本不卡不码高清免费观看| 日韩精品一区第一页| 丝袜亚洲另类欧美| 美女视频第一区二区三区免费观看网站| 午夜精品久久久久久久久| 亚洲国产精品一区二区久久 | 一区二区免费看| 一区二区在线观看视频在线观看| 亚洲视频一区在线观看| 亚洲国产色一区| 日韩不卡一二三区| 国产一区不卡在线| 99国产精品久久久久| 在线一区二区三区| 欧美一级xxx| 国产网站一区二区| 亚洲精品免费一二三区| 五月婷婷激情综合| 国产最新精品免费| 91原创在线视频| 欧美肥妇free| 国产性色一区二区| 亚洲国产精品久久久男人的天堂 | 欧美激情在线一区二区三区| 日本一区二区三区国色天香 | 欧美日韩国产高清一区二区三区| 精品入口麻豆88视频| 亚洲手机成人高清视频| 日欧美一区二区| 9i在线看片成人免费| 欧美乱熟臀69xxxxxx| 国产日韩欧美制服另类| 亚洲第一狼人社区| 成人激情午夜影院| 欧美精品久久天天躁| 中文字幕中文字幕一区| 日韩—二三区免费观看av| 国产成人精品亚洲午夜麻豆| 在线观看网站黄不卡| 久久午夜国产精品| 天堂蜜桃一区二区三区| 99精品欧美一区| 久久久蜜桃精品| 日本欧美加勒比视频| 91国偷自产一区二区三区成为亚洲经典| 精品女同一区二区| 偷拍一区二区三区| 色噜噜狠狠一区二区三区果冻| 久久久不卡网国产精品一区| 天天做天天摸天天爽国产一区 | 精品久久一区二区| 亚洲成av人片一区二区三区| 成人国产精品免费| 欧美精品一区视频| 亚洲国产成人av网| 99精品国产99久久久久久白柏| 日韩欧美在线一区二区三区| 亚洲国产精品久久久久婷婷884| 99精品国产91久久久久久| 亚洲国产精品成人综合| 蜜臀精品一区二区三区在线观看 | 在线一区二区观看| 亚洲天堂2016| 色综合久久综合网97色综合| 国产精品人妖ts系列视频| 国产91对白在线观看九色| 久久久综合激的五月天| 国产中文字幕精品| 日韩一区和二区| 久久国产精品露脸对白| 日韩美女主播在线视频一区二区三区| 午夜不卡av免费| 欧美日韩激情在线| 日本不卡123| 欧美va亚洲va国产综合| 国产一区二区精品久久91| 久久精品综合网| 高清av一区二区| 1024成人网| 欧美日本一区二区三区| 日韩av中文字幕一区二区| 精品少妇一区二区三区在线视频| 激情综合色综合久久| 久久久午夜精品理论片中文字幕| 国产+成+人+亚洲欧洲自线| 国产精品久久久久三级| 一本大道久久a久久综合| 亚洲尤物在线视频观看| 91精品国产综合久久福利软件| 蜜臀va亚洲va欧美va天堂| 国产亚洲精品精华液| 成人一区二区三区中文字幕| 亚洲综合一二区| 精品国产第一区二区三区观看体验| 国产成人一区二区精品非洲| 亚洲视频免费看| 欧美一区二区三区爱爱| 丁香激情综合国产| 亚洲一区av在线| 色综合天天综合| 欧美日韩国产片| 久久久午夜电影| 色综合久久综合网97色综合| 轻轻草成人在线| 国产精品成人免费| 91精品国产福利在线观看| 福利一区二区在线观看| 亚洲午夜在线视频| 国产三级精品三级在线专区| 欧美三级电影网站| 国产成人福利片| 日韩精品成人一区二区在线| 日本一区二区三区dvd视频在线| 欧美性猛片aaaaaaa做受| 国产美女精品人人做人人爽| 美女视频网站黄色亚洲| 亚洲人成影院在线观看| 亚洲精品一区二区三区精华液 | 欧美性高清videossexo| 国产精品88av| 免费在线观看成人| 亚洲国产裸拍裸体视频在线观看乱了| 久久久不卡网国产精品二区| 在线不卡中文字幕播放| 色综合网站在线| 成人avav影音| 国产综合色视频| 日本午夜精品视频在线观看| 亚洲精品免费电影| 亚洲欧美色图小说| 日本一二三不卡| 国产午夜亚洲精品理论片色戒| 欧美一级片免费看| 欧美日韩色综合| 欧美日韩综合一区| 一本大道久久a久久精品综合 | 综合激情网...| 欧美国产一区视频在线观看| 久久综合国产精品| 亚洲精品一区二区三区蜜桃下载| 欧美一区二区三区免费大片 | 粉嫩av一区二区三区| 国产真实乱子伦精品视频| 婷婷久久综合九色国产成人 | 国产一区不卡在线| 国产麻豆午夜三级精品| 激情综合亚洲精品| 国产成人免费在线观看| 国产乱码精品一区二区三区五月婷| 麻豆中文一区二区| 蜜臀va亚洲va欧美va天堂 | 亚洲欧美aⅴ...| 亚洲精品成人精品456| 中文字幕日韩欧美一区二区三区| 中文字幕av免费专区久久| 中文字幕不卡在线| 亚洲私人黄色宅男| 亚洲成av人片在www色猫咪| 日韩国产在线观看一区| 美国三级日本三级久久99| 国产精品香蕉一区二区三区| 国产91丝袜在线播放九色| 91亚洲男人天堂| 欧美男男青年gay1069videost| 欧美一区三区四区| 国产三级精品三级| 亚洲欧洲综合另类在线| 亚洲观看高清完整版在线观看| 无码av免费一区二区三区试看| 麻豆国产精品777777在线| 成人免费观看视频| 欧美日韩精品一区二区三区蜜桃| 日韩精品一区二区三区蜜臀 | 精品国产乱码久久久久久牛牛 | 一区av在线播放| 久久福利视频一区二区| 国产呦萝稀缺另类资源| 99精品视频中文字幕| 日韩一区二区电影| 中文字幕第一区综合| 日韩高清在线一区| 国产99久久久精品| 欧美日韩在线免费视频| 久久久久综合网| 亚洲国产精品自拍| 国产成人精品免费在线| 欧美精品v国产精品v日韩精品| 久久久99免费| 国产超碰在线一区| 在线观看亚洲一区| 国产亲近乱来精品视频| 亚洲成人av中文| 粉嫩av亚洲一区二区图片| 91精品国产色综合久久ai换脸| 国产精品电影院| 国产在线精品免费|