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

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

?? comboboxpropertyeditor.java

?? 精美開源Swing組件
?? JAVA
字號:
/**
 * L2FProd.com Common Components 7.3 License.
 *
 * Copyright 2005-2007 L2FProd.com
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.l2fprod.common.beans.editor;

import java.awt.Component;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;

import javax.swing.DefaultComboBoxModel;
import javax.swing.DefaultListCellRenderer;
import javax.swing.Icon;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.event.PopupMenuEvent;
import javax.swing.event.PopupMenuListener;

/**
 * ComboBoxPropertyEditor. <br>
 *  
 */
public class ComboBoxPropertyEditor extends AbstractPropertyEditor {

  private Object oldValue;
  private Icon[] icons;
  
  public ComboBoxPropertyEditor() {
    editor = new JComboBox() {
      public void setSelectedItem(Object anObject) {
        oldValue = getSelectedItem();
        super.setSelectedItem(anObject);
      }
    };
    
    final JComboBox combo = (JComboBox)editor;
    
    combo.setRenderer(new Renderer());
    combo.addPopupMenuListener(new PopupMenuListener() {
      public void popupMenuCanceled(PopupMenuEvent e) {}
      public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {
        ComboBoxPropertyEditor.this.firePropertyChange(oldValue,
          combo.getSelectedItem());
      }
      public void popupMenuWillBecomeVisible(PopupMenuEvent e) {}
    });
    combo.addKeyListener(new KeyAdapter() {
      public void keyPressed(KeyEvent e) {
        if (e.getKeyCode() == KeyEvent.VK_ENTER) {
          ComboBoxPropertyEditor.this.firePropertyChange(oldValue,
            combo.getSelectedItem());          
        }
      }
    });
    combo.setSelectedIndex(-1);
  }

  public Object getValue() {
    Object selected = ((JComboBox)editor).getSelectedItem();
    if (selected instanceof Value) {
      return ((Value)selected).value;
    } else {
      return selected;
    }
  }

  public void setValue(Object value) {
    JComboBox combo = (JComboBox)editor;
    Object current = null;
    int index = -1;
    for (int i = 0, c = combo.getModel().getSize(); i < c; i++) {
      current = combo.getModel().getElementAt(i);
      if (value == current || (current != null && current.equals(value))) {
        index = i;
        break;
      }
    }
    ((JComboBox)editor).setSelectedIndex(index);
  }

  public void setAvailableValues(Object[] values) {
    ((JComboBox)editor).setModel(new DefaultComboBoxModel(values));
  }

  public void setAvailableIcons(Icon[] icons) {
    this.icons = icons;
  }
  
  public class Renderer extends DefaultListCellRenderer {
    public Component getListCellRendererComponent(
    JList list,
    Object value,
    int index,
    boolean isSelected,
    boolean cellHasFocus) {
      Component component = super.getListCellRendererComponent(
          list,
          (value instanceof Value) ? ((Value)value).visualValue : value,
          index,
          isSelected,
          cellHasFocus);
      if (icons != null && index >= 0 && component instanceof JLabel)
        ((JLabel)component).setIcon(icons[index]);
      return component;
    }
  }

  public static final class Value {
    private Object value;
    private Object visualValue;
    public Value(Object value, Object visualValue) {
      this.value = value;
      this.visualValue = visualValue;
    }
    public boolean equals(Object o) {
      if (o == this)
        return true;
      if (value == o || (value != null && value.equals(o)))
        return true;
      return false;
    }
    public int hashCode() {
      return value==null?0:value.hashCode();
    }
  }
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区美女在线| 国产精品女同一区二区三区| 极品少妇一区二区三区精品视频| 久久久电影一区二区三区| 在线亚洲免费视频| 国产一区二区毛片| 亚洲高清一区二区三区| 国产精品毛片久久久久久久| 在线电影一区二区三区| caoporn国产精品| 另类综合日韩欧美亚洲| 亚洲午夜久久久久久久久电影院 | 成人精品gif动图一区| 午夜精品久久久久久久| 亚洲欧美日韩国产一区二区三区| 久久综合久久鬼色中文字| 欧美三级电影网| 91丨九色丨蝌蚪丨老版| 国模套图日韩精品一区二区| 日韩中文字幕91| 一区二区三区电影在线播| 欧美极品xxx| 精品国产凹凸成av人网站| 欧美久久久一区| 在线观看亚洲成人| 99久久久无码国产精品| 成人激情综合网站| 黄一区二区三区| 秋霞午夜鲁丝一区二区老狼| 亚洲国产成人av好男人在线观看| 中文字幕字幕中文在线中不卡视频| 久久综合色8888| 久久亚洲一区二区三区明星换脸 | 一区二区三区精品视频| 国产精品卡一卡二| 国产日产精品一区| 国产亚洲欧美在线| 欧美精品一区二区三区在线| 日韩欧美国产一区二区在线播放| 欧美一二三区在线| 欧美一区二区三区影视| 欧美电影一区二区三区| 欧美日本免费一区二区三区| 欧美三级欧美一级| 欧美视频自拍偷拍| 欧美日韩色一区| 欧美丰满高潮xxxx喷水动漫| 欧美亚洲综合网| 欧美男同性恋视频网站| 欧美日韩国产色站一区二区三区| 欧美在线三级电影| 欧美日韩午夜在线| 91精品国产欧美一区二区成人| 欧美三级日韩在线| 日韩亚洲电影在线| 久久―日本道色综合久久| 久久久精品日韩欧美| 国产精品少妇自拍| 亚洲精选视频免费看| 亚洲一区二区三区中文字幕在线| 亚洲曰韩产成在线| 男女激情视频一区| 国产一区二区三区日韩| 成人av影视在线观看| 99re成人精品视频| 欧美日韩午夜影院| 26uuu国产电影一区二区| 亚洲国产精品黑人久久久| 亚洲欧美日韩在线| 日本视频免费一区| 国产精品一二三在| 91免费视频网| 这里是久久伊人| 久久九九全国免费| 一区二区高清视频在线观看| 日本欧美一区二区三区| 国产成人精品亚洲日本在线桃色| av亚洲精华国产精华| 欧美日韩国产123区| 精品国一区二区三区| 国产精品国产自产拍在线| 亚洲第一搞黄网站| 国产精品一区二区在线看| 色综合天天综合色综合av| 在线播放91灌醉迷j高跟美女 | 精品国产乱码久久久久久图片| 国产欧美一区二区精品性色 | 国产成人av一区二区三区在线观看| 不卡av在线免费观看| 欧美一区二区三区色| a级精品国产片在线观看| 日韩你懂的电影在线观看| 在线电影欧美成精品| 欧美亚洲动漫精品| 精品国产伦一区二区三区观看方式 | 另类小说图片综合网| 国产成人啪免费观看软件| 欧美午夜精品免费| 亚洲国产精华液网站w | 成人免费福利片| 91精品国产91综合久久蜜臀| 中文字幕在线观看不卡| 国产一区欧美日韩| 91精品国模一区二区三区| 亚洲欧洲美洲综合色网| 激情六月婷婷久久| 欧美日韩夫妻久久| 国产精品不卡在线观看| 精品一二三四区| 亚洲激情图片一区| 91免费精品国自产拍在线不卡| 国产精品毛片a∨一区二区三区| 日韩精品一级中文字幕精品视频免费观看| 国产精品99久| 欧美大片一区二区| 亚洲成人1区2区| 色综合天天综合色综合av| 国产亚洲欧美日韩日本| 日韩电影在线免费观看| 色婷婷激情久久| 亚洲另类色综合网站| 成人黄色电影在线| 国产亚洲欧美一区在线观看| 国内精品国产三级国产a久久| 欧美美女黄视频| 亚洲国产成人av网| 欧美专区日韩专区| 亚洲无线码一区二区三区| 91亚洲资源网| 亚洲男人的天堂一区二区| 99久久综合色| 中文字幕亚洲欧美在线不卡| 成人午夜电影久久影院| 久久久午夜精品理论片中文字幕| 蜜芽一区二区三区| 日韩一区二区三区电影在线观看 | 一区二区欧美精品| 日本高清成人免费播放| 国产精品福利av| 99国产精品一区| 亚洲同性同志一二三专区| 波多野结衣在线aⅴ中文字幕不卡 波多野结衣在线一区 | 国产一区二区三区四区在线观看| 精品噜噜噜噜久久久久久久久试看| 日韩精品亚洲一区| 日韩区在线观看| 激情久久久久久久久久久久久久久久 | 色悠久久久久综合欧美99| 亚洲女同一区二区| 欧美亚洲自拍偷拍| 午夜免费久久看| 欧美成人国产一区二区| 国产一区二区美女| 中文字幕va一区二区三区| av在线综合网| 亚洲午夜影视影院在线观看| 欧美美女喷水视频| 九九九久久久精品| 中文字幕成人在线观看| 91久久人澡人人添人人爽欧美| 亚洲一区在线视频观看| 欧美精品在线一区二区三区| 日本在线观看不卡视频| 欧美激情资源网| 欧美亚洲国产怡红院影院| 日韩不卡一区二区三区| 久久亚洲综合色一区二区三区| 成人激情动漫在线观看| 久久精品国产久精国产爱| 亚洲男人天堂一区| 亚洲小少妇裸体bbw| 国产老女人精品毛片久久| 日韩av一区二| 精品在线免费视频| 国产一区二区三区四区五区美女| 九九九精品视频| 黑人巨大精品欧美黑白配亚洲| 青青草97国产精品免费观看无弹窗版 | 亚洲中国最大av网站| 欧美二区三区91| 久久国产精品72免费观看| 中文字幕在线不卡| 欧美午夜精品久久久久久孕妇 | 欧美日韩国产综合视频在线观看| 另类欧美日韩国产在线| 中文字幕一区二区三区乱码在线| 欧美日高清视频| 国产成人综合网| 午夜精品久久久久久久蜜桃app| 国产日韩一级二级三级| 欧美日本一区二区在线观看| 国产成人精品亚洲午夜麻豆| 亚洲国产美国国产综合一区二区 | 亚洲激情图片小说视频| 欧美成人bangbros| 91成人免费网站| 国产激情视频一区二区在线观看 | 欧美卡1卡2卡| 波多野结衣91| 久久99精品久久久|