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

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

?? basiccombopopup.java

?? java1.6眾多例子參考
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/* * @(#)BasicComboPopup.java	1.85 07/10/25 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package javax.swing.plaf.basic;import javax.accessibility.AccessibleContext;import javax.swing.*;import javax.swing.border.Border;import javax.swing.border.LineBorder;import javax.swing.event.*;import java.awt.*;import java.awt.event.*;import java.beans.PropertyChangeListener;import java.beans.PropertyChangeEvent;import java.io.Serializable;/** * This is a basic implementation of the <code>ComboPopup</code> interface. *  * This class represents the ui for the popup portion of the combo box. * <p> * All event handling is handled by listener classes created with the  * <code>createxxxListener()</code> methods and internal classes. * You can change the behavior of this class by overriding the * <code>createxxxListener()</code> methods and supplying your own * event listeners or subclassing from the ones supplied in this class. * <p> * <strong>Warning:</strong> * Serialized objects of this class will not be compatible with * future Swing releases. The current serialization support is * appropriate for short term storage or RMI between applications running * the same version of Swing.  As of 1.4, support for long term storage * of all JavaBeans<sup><font size="-2">TM</font></sup> * has been added to the <code>java.beans</code> package. * Please see {@link java.beans.XMLEncoder}. * * @version 1.85 10/25/07 * @author Tom Santos * @author Mark Davidson */public class BasicComboPopup extends JPopupMenu implements ComboPopup {    // An empty ListMode, this is used when the UI changes to allow    // the JList to be gc'ed.    private static class EmptyListModelClass implements ListModel,                                                        Serializable {	public int getSize() { return 0; }	public Object getElementAt(int index) { return null; }	public void addListDataListener(ListDataListener l) {}	public void removeListDataListener(ListDataListener l) {}    };    static final ListModel EmptyListModel = new EmptyListModelClass();    private static Border LIST_BORDER = new LineBorder(Color.BLACK, 1);    protected JComboBox                comboBox;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the accessor methods instead.     *     * @see #getList     * @see #createList     */    protected JList                    list;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the create method instead     *     * @see #createScroller     */    protected JScrollPane              scroller;    /**     * As of Java 2 platform v1.4 this previously undocumented field is no     * longer used.     */    protected boolean                  valueIsAdjusting = false;    // Listeners that are required by the ComboPopup interface    /**     * Implementation of all the listener classes.     */    private Handler handler;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the accessor or create methods instead.     *     * @see #getMouseMotionListener     * @see #createMouseMotionListener     */    protected MouseMotionListener      mouseMotionListener;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the accessor or create methods instead.     *     * @see #getMouseListener     * @see #createMouseListener     */    protected MouseListener            mouseListener;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the accessor or create methods instead.     *     * @see #getKeyListener     * @see #createKeyListener     */    protected KeyListener              keyListener;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the create method instead.     *     * @see #createListSelectionListener     */    protected ListSelectionListener    listSelectionListener;    // Listeners that are attached to the list    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the create method instead.     *     * @see #createListMouseListener     */    protected MouseListener            listMouseListener;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the create method instead     *     * @see #createListMouseMotionListener     */    protected MouseMotionListener      listMouseMotionListener;    // Added to the combo box for bound properties    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the create method instead     *     * @see #createPropertyChangeListener     */    protected PropertyChangeListener   propertyChangeListener;    // Added to the combo box model    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the create method instead     *     * @see #createListDataListener     */    protected ListDataListener         listDataListener;    /**     * This protected field is implementation specific. Do not access directly     * or override. Use the create method instead     *     * @see #createItemListener     */    protected ItemListener             itemListener;    /**     * This protected field is implementation specific. Do not access directly     * or override.      */    protected Timer                    autoscrollTimer;    protected boolean                  hasEntered = false;    protected boolean                  isAutoScrolling = false;    protected int                      scrollDirection = SCROLL_UP;    protected static final int         SCROLL_UP = 0;    protected static final int         SCROLL_DOWN = 1;    //========================================    // begin ComboPopup method implementations    //    /**     * Implementation of ComboPopup.show().     */    public void show() {	setListSelection(comboBox.getSelectedIndex());	Point location = getPopupLocation();        show( comboBox, location.x, location.y );    }    /**     * Implementation of ComboPopup.hide().     */    public void hide() {        MenuSelectionManager manager = MenuSelectionManager.defaultManager();        MenuElement [] selection = manager.getSelectedPath();        for ( int i = 0 ; i < selection.length ; i++ ) {            if ( selection[i] == this ) {                manager.clearSelectedPath();                break;            }        }        if (selection.length > 0) {            comboBox.repaint();        }    }    /**     * Implementation of ComboPopup.getList().     */    public JList getList() {        return list;    }    /**     * Implementation of ComboPopup.getMouseListener().     *      * @return a <code>MouseListener</code> or null     * @see ComboPopup#getMouseListener     */    public MouseListener getMouseListener() {	if (mouseListener == null) {	    mouseListener = createMouseListener();	}        return mouseListener;    }    /**     * Implementation of ComboPopup.getMouseMotionListener().     *     * @return a <code>MouseMotionListener</code> or null     * @see ComboPopup#getMouseMotionListener     */    public MouseMotionListener getMouseMotionListener() {	if (mouseMotionListener == null) {	    mouseMotionListener = createMouseMotionListener();	}        return mouseMotionListener;    }    /**     * Implementation of ComboPopup.getKeyListener().     *     * @return a <code>KeyListener</code> or null     * @see ComboPopup#getKeyListener     */    public KeyListener getKeyListener() {	if (keyListener == null) {	    keyListener = createKeyListener();	}	return keyListener;    }    /**     * Called when the UI is uninstalling.  Since this popup isn't in the component     * tree, it won't get it's uninstallUI() called.  It removes the listeners that     * were added in addComboBoxListeners().     */    public void uninstallingUI() {	if (propertyChangeListener != null) {	    comboBox.removePropertyChangeListener( propertyChangeListener );	}	if (itemListener != null) {	    comboBox.removeItemListener( itemListener );	}	uninstallComboBoxModelListeners(comboBox.getModel());        uninstallKeyboardActions();	uninstallListListeners();	// We do this, otherwise the listener the ui installs on	// the model (the combobox model in this case) will keep a	// reference to the list, causing the list (and us) to never get gced.	list.setModel(EmptyListModel);    }    //    // end ComboPopup method implementations    //======================================    /**      * Removes the listeners from the combo box model     *     * @param model The combo box model to install listeners     * @see #installComboBoxModelListeners     */    protected void uninstallComboBoxModelListeners( ComboBoxModel model ) {	if (model != null && listDataListener != null) {	    model.removeListDataListener(listDataListener);	}    }    protected void uninstallKeyboardActions() {        // XXX - shouldn't call this method//        comboBox.unregisterKeyboardAction( KeyStroke.getKeyStroke( KeyEvent.VK_ENTER, 0 ) );    }    //===================================================================    // begin Initialization routines    //    public BasicComboPopup( JComboBox combo ) {        super();        setName("ComboPopup.popup");        comboBox = combo;        setLightWeightPopupEnabled( comboBox.isLightWeightPopupEnabled() );	// UI construction of the popup.         list = createList();        list.setName("ComboBox.list");	configureList();        scroller = createScroller();        scroller.setName("ComboBox.scrollPane");        configureScroller();        configurePopup();	installComboBoxListeners();        installKeyboardActions();    }    // Overriden PopupMenuListener notification methods to inform combo box    // PopupMenuListeners.    protected void firePopupMenuWillBecomeVisible() {	super.firePopupMenuWillBecomeVisible();	comboBox.firePopupMenuWillBecomeVisible();    }        protected void firePopupMenuWillBecomeInvisible() {	super.firePopupMenuWillBecomeInvisible();	comboBox.firePopupMenuWillBecomeInvisible();    }        protected void firePopupMenuCanceled() {	super.firePopupMenuCanceled();	comboBox.firePopupMenuCanceled();    }    /**     * Creates a listener      * that will watch for mouse-press and release events on the combo box.     *      * <strong>Warning:</strong>     * When overriding this method, make sure to maintain the existing     * behavior.     *     * @return a <code>MouseListener</code> which will be added to      * the combo box or null     */    protected MouseListener createMouseListener() {        return getHandler();    }    /**     * Creates the mouse motion listener which will be added to the combo     * box.     *     * <strong>Warning:</strong>     * When overriding this method, make sure to maintain the existing     * behavior.     *     * @return a <code>MouseMotionListener</code> which will be added to     *         the combo box or null     */    protected MouseMotionListener createMouseMotionListener() {        return getHandler();    }    /**     * Creates the key listener that will be added to the combo box. If      * this method returns null then it will not be added to the combo box.     *     * @return a <code>KeyListener</code> or null     */    protected KeyListener createKeyListener() {	return null;    }    /**     * Creates a list selection listener that watches for selection changes in     * the popup's list.  If this method returns null then it will not     * be added to the popup list.     *     * @return an instance of a <code>ListSelectionListener</code> or null     */    protected ListSelectionListener createListSelectionListener() {        return null;    }    /**     * Creates a list data listener which will be added to the     * <code>ComboBoxModel</code>. If this method returns null then     * it will not be added to the combo box model.     *     * @return an instance of a <code>ListDataListener</code> or null     */    protected ListDataListener createListDataListener() {        return null;    }    /**     * Creates a mouse listener that watches for mouse events in     * the popup's list. If this method returns null then it will     * not be added to the combo box.     *     * @return an instance of a <code>MouseListener</code> or null     */    protected MouseListener createListMouseListener() {        return getHandler();    }    /**     * Creates a mouse motion listener that watches for mouse motion      * events in the popup's list. If this method returns null then it will     * not be added to the combo box.     *     * @return an instance of a <code>MouseMotionListener</code> or null     */    protected MouseMotionListener createListMouseMotionListener() {        return getHandler();    }    /**

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产在线播放一区三区四| 69av一区二区三区| 国产精品护士白丝一区av| 成人av电影免费在线播放| 国产日产欧美精品一区二区三区| 国产传媒一区在线| 中文字幕精品—区二区四季| 国产精品白丝jk黑袜喷水| 国产清纯美女被跳蛋高潮一区二区久久w | 国产人久久人人人人爽| 国产成a人无v码亚洲福利| 亚洲男人电影天堂| 91精品国产综合久久香蕉的特点| 精品在线免费观看| 国产精品美女一区二区三区| 欧洲一区在线观看| 奇米影视7777精品一区二区| 国产婷婷色一区二区三区在线| 成人黄色国产精品网站大全在线免费观看 | 日韩欧美视频一区| 东方aⅴ免费观看久久av| 亚洲自拍偷拍综合| 日韩三级在线免费观看| 大胆亚洲人体视频| 性久久久久久久| 久久精品亚洲麻豆av一区二区 | 亚洲综合一区二区精品导航| 日韩欧美国产一区在线观看| jlzzjlzz亚洲日本少妇| 首页国产丝袜综合| 国产精品每日更新| 9191成人精品久久| 99国产精品一区| 久久国产精品色| 夜夜精品视频一区二区 | 欧美乱妇23p| 成人av在线电影| 日av在线不卡| 亚洲精品第1页| 久久麻豆一区二区| 91精品在线观看入口| 成人国产精品免费观看| 日韩电影免费在线看| 中文字幕日韩av资源站| wwwwxxxxx欧美| 666欧美在线视频| 一本到不卡精品视频在线观看 | 国产精品视频一二三区| 日韩欧美激情四射| 欧美探花视频资源| 色综合色狠狠综合色| 国产成人在线视频网站| 日本不卡在线视频| 亚洲综合在线第一页| 中文字幕高清不卡| 久久这里只有精品首页| 欧美一级欧美三级在线观看| 欧美三级日本三级少妇99| 成人激情视频网站| 国产成人鲁色资源国产91色综| 麻豆精品在线看| 亚洲成人一区在线| 亚洲综合色成人| 亚洲欧美日韩国产一区二区三区| 国产午夜亚洲精品午夜鲁丝片 | 亚洲精品中文在线观看| 国产精品国产三级国产专播品爱网 | 国产日产欧美一区| 中文字幕一区二区三区精华液| 日韩女优av电影| 日韩一级免费观看| 欧美一区二区在线观看| 欧美日韩免费高清一区色橹橹 | 亚洲成人免费视| 亚洲一本大道在线| 亚洲一区二区三区爽爽爽爽爽| 亚洲欧美成人一区二区三区| 亚洲欧美一区二区在线观看| 国产网站一区二区三区| 久久久91精品国产一区二区精品| 久久精品欧美一区二区三区麻豆| 2020日本不卡一区二区视频| 久久久久成人黄色影片| 久久久蜜桃精品| 欧美国产精品中文字幕| 中文字幕亚洲成人| 亚洲蜜桃精久久久久久久| 一区二区三区中文在线| 亚洲va欧美va人人爽| 亚洲超碰精品一区二区| 亚洲aaa精品| 麻豆成人91精品二区三区| 精品制服美女久久| 粉嫩aⅴ一区二区三区四区| www..com久久爱| 91久久一区二区| 欧美丰满少妇xxxbbb| 精品久久久久av影院| 亚洲国产精品高清| 亚洲综合自拍偷拍| 日韩制服丝袜av| 国产精品综合二区| 99国产精品国产精品毛片| 欧美伊人久久久久久午夜久久久久| 欧美绝品在线观看成人午夜影视| 欧美一二三区在线观看| 欧美国产1区2区| 亚洲成人av中文| 国产美女精品一区二区三区| av亚洲精华国产精华精华| 精品视频123区在线观看| 精品国产一区二区三区忘忧草 | 亚洲欧洲精品天堂一级| 午夜精品一区二区三区三上悠亚| 韩国三级在线一区| 91蝌蚪国产九色| 日韩欧美一区二区久久婷婷| 国产精品成人免费在线| 天堂在线亚洲视频| 国产一区激情在线| 在线精品视频一区二区三四| 日韩精品在线看片z| 亚洲乱码一区二区三区在线观看| 精品一区二区三区香蕉蜜桃 | 日韩一级完整毛片| 亚洲国产精品99久久久久久久久| 丝袜美腿成人在线| 成人在线综合网站| 欧美一区二区在线播放| |精品福利一区二区三区| 久久成人免费网站| 欧美最猛性xxxxx直播| 久久综合久久综合亚洲| 亚洲国产精品自拍| 99国产精品99久久久久久| 日韩欧美专区在线| 亚洲自拍偷拍图区| 不卡高清视频专区| 欧美精品一区二区久久久| 午夜精品在线看| 91在线国产福利| 国产欧美日韩视频在线观看| 开心九九激情九九欧美日韩精美视频电影 | 在线免费观看一区| 国产精品久久久久久久久免费樱桃 | 捆绑调教一区二区三区| 在线观看亚洲成人| 18成人在线观看| 成人免费高清在线观看| 久久亚洲一区二区三区四区| 日本aⅴ亚洲精品中文乱码| 91福利国产精品| 中文字幕亚洲成人| 丁香激情综合五月| 欧美精品一区二区三| 麻豆精品一区二区三区| 51精品视频一区二区三区| 亚洲精品一二三| 色综合久久久久综合体| **网站欧美大片在线观看| 成人一级片在线观看| 国产亚洲欧美色| 国产一区999| 久久久一区二区| 国产乱码精品一区二区三区av | 欧美浪妇xxxx高跟鞋交| 亚洲成人你懂的| 欧美日韩三级视频| 国产精品传媒视频| 成人av先锋影音| 中文字幕精品—区二区四季| 成人高清免费在线播放| 中文字幕精品一区| av中文一区二区三区| 综合电影一区二区三区 | 成人深夜视频在线观看| 中文字幕人成不卡一区| 色婷婷精品大视频在线蜜桃视频| 亚洲精品一二三区| 欧美日韩不卡在线| 日本伊人精品一区二区三区观看方式| 91精品国产色综合久久久蜜香臀| 奇米精品一区二区三区四区| 日韩一级精品视频在线观看| 精一区二区三区| 国产精品第13页| 欧美日韩三级一区二区| 激情综合五月婷婷| 中文字幕一区视频| 欧美伦理影视网| 国产一区啦啦啦在线观看| 自拍偷拍欧美精品| 欧美日韩国产欧美日美国产精品| 日韩精品国产精品| 久久久久久久综合| 99久久伊人精品| 日本女人一区二区三区| 国产日韩欧美精品电影三级在线 | 欧美一区二区三区视频免费| 国产精品一区免费视频|