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

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

?? comboboxui.java

?? 漂亮的java swing 界面
?? JAVA
字號:
package com.flat;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.RoundRectangle2D;

import javax.swing.*;
import javax.swing.border.Border;
import javax.swing.plaf.*;
import javax.swing.plaf.metal.*;

public class ComboBoxUI extends MetalComboBoxUI {
  private boolean rollover = false;
  private boolean focus = false;
  private MiML miML;
  
  protected boolean oldOpaque;
  
  public static ComponentUI createUI( JComponent c) {
    return new ComboBoxUI();
  }
  
  protected void installDefaults() {
    super.installDefaults();
   
    oldOpaque = comboBox.isOpaque();
    comboBox.setOpaque( false);
  }

  protected void uninstallDefaults() {
    super.uninstallDefaults();
    
    comboBox.setOpaque( oldOpaque);
  }

  protected  void installListeners() {
    super.installListeners();

    miML = new MiML();
    comboBox.addMouseListener( miML);
    comboBox.addFocusListener( miML);
  }
  
  protected  void uninstallListeners() {
    super.uninstallListeners();

    comboBox.removeMouseListener( miML);
    comboBox.removeFocusListener( miML);
  }
  
  public Dimension getMinimumSize( JComponent c) {
    Dimension dim = super.getMinimumSize( c);
    
    if ( comboBox.isEditable() ) {
      dim.height = editor.getPreferredSize().height - 2;
    }
    
    dim.width += 20;
    
    return dim;
  }
  
  protected ComboBoxEditor createEditor() {
    return new NimRODComboBoxEditor();
  }
  
  protected JButton createArrowButton() {
    return new NimRODComboBoxButton( comboBox, UIManager.getIcon( "ComboBox.buttonDownIcon"), 
                                     (comboBox.isEditable() ? true : false),
                                     currentValuePane, listBox);
  }
  
  public class NimRODComboBoxEditor extends MetalComboBoxEditor  {
    public NimRODComboBoxEditor() {
      super();
      editor.setBorder( Borders.getComboEditorBorder());
    }
  }
  
  private final class NimRODComboBoxButton extends MetalComboBoxButton {
    private static final long serialVersionUID = 1L;

    public NimRODComboBoxButton( JComboBox cb, Icon icon, boolean editable, CellRendererPane pane, JList list) {
      super( cb, icon, editable, pane, list);

      miML = new MiML();
      addMouseListener( miML);
      addFocusListener( miML);
    }

    public void paintComponent( Graphics g) {
      boolean canijo = false;
      
      if ( iconOnly ) {
        Border bb = Borders.getComboButtonBorder();
        Insets ins = bb.getBorderInsets( comboBox);
        
        if ( ( getSize().height < (comboIcon.getIconHeight() + ins.top + ins.bottom) )
              ||
             ( getSize().width  < (comboIcon.getIconWidth() + ins.left + ins.right) ) 
           ) {
          canijo = true;
          bb = Borders.getThinGenBorder();
        }
        
        setBorder( bb);
        setMargin( new Insets( 0,5,0,7));
      }
      else {
        Border bb = Borders.getComboEditorBorder();
        Insets ins = bb.getBorderInsets( comboBox);
        
        if ( getSize().height < (getFont().getSize() + ins.top + ins.bottom) ) {
          canijo = true;
          bb = Borders.getThinGenBorder();
        }
        
        setBorder( bb);
        setOpaque( false);
      }

      if ( !iconOnly && comboBox != null) {
        try {
          g.setColor( getBackground());
          if ( !canijo ) {
            g.fillRect( 2,3, getWidth()-4, getHeight()-6);
          }
          else {
            g.fillRect( 0,0, getWidth(), getHeight());
          }
          g.drawLine( 3,2, getWidth()-4, 2);
          g.drawLine( 3,getHeight()-3, getWidth()-4, getHeight()-3);
          
          paintLeches( g);
        }
        catch ( Exception ex) {}
      }
      
      if ( iconOnly ) {
        RoundRectangle2D.Float boton = new RoundRectangle2D.Float(); 
        if ( canijo ) {
          boton.x = 0;
          boton.y = 0;
          boton.width = getWidth();
          boton.height = getHeight();
          boton.arcwidth = 1;
          boton.archeight = 1;
        }
        else {
          boton.x = 2;
          boton.y = 2;
          boton.width = getWidth() - 4;
          boton.height = getHeight() - 4;
          boton.arcwidth = 8;
          boton.archeight = 8;
        }
        
        setOpaque( false);
        paintLeches( g);
        
        ButtonModel mod = getModel();
        Graphics2D g2D = (Graphics2D)g;
        g2D.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        
        GradientPaint grad = null;
        
        
        if ( mod.isPressed() || mod.isSelected() ) {
          grad = new GradientPaint( 0,0, Utils.getSombra(), 
                                    0,getHeight(), Utils.getBrillo());
          g2D.setPaint( grad);
          g2D.fill( boton);
        }
        else {
          grad = new GradientPaint( 0,0, Utils.getBrillo(), 
                                    0,getHeight(), Utils.getSombra());
          g2D.setPaint( grad);
          g2D.fill( boton);
        }
        
        g2D.setRenderingHint( RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_DEFAULT);
      }
      
      if ( this.isEnabled() && !canijo ) {
        if ( focus ) {
          Utils.paintFocus( g, 1, 1, getWidth()-2, getHeight()-2, 4,4, 3, LookAndFeel.getFocusColor());
        }
        else if ( rollover ) {
          Utils.paintFocus( g, 1, 1, getWidth()-2, getHeight()-2, 4,4, 3, Utils.getColorAlfa( LookAndFeel.getFocusColor(), 150));
        }
      }
    }
    
    protected void paintLeches( Graphics g ) {
      boolean leftToRight = comboBox.getComponentOrientation().isLeftToRight();

      if (ui != null) {
        Graphics scratchGraphics = (g == null) ? null : g.create();
        try {
          ui.update( scratchGraphics, this);
        }
        finally {
          scratchGraphics.dispose();
        }
      }

      Insets insets = getInsets();

      int width = getWidth() - (insets.left + insets.right);
      int height = getHeight() - (insets.top + insets.bottom);

      if ( height <= 0 || width <= 0 ) {
        return;
      }

      int left = insets.left;
      int top = insets.top;
      int right = left + (width - 1);
      int bottom = top + (height - 1);

      int iconWidth = 0;
      int iconLeft = (leftToRight) ? right : left;

      if ( comboIcon != null ) {
        iconWidth = comboIcon.getIconWidth();
        int iconHeight = comboIcon.getIconHeight();
        int iconTop = 0;

        if ( iconOnly ) {
          iconLeft = (getWidth() / 2) - (iconWidth / 2);
          iconTop = (getHeight() / 2) - (iconHeight / 2);
        }
        else {
          if (leftToRight) {
            iconLeft = (left + (width - 1)) - iconWidth;
          }
          else {
            iconLeft = left;
          }
          iconTop = (top + ((bottom - top) / 2)) - (iconHeight / 2);
        }

        comboIcon.paintIcon( this, g, iconLeft, iconTop );

        if ( !iconOnly ) {
          g.setColor( Utils.getSombra());
          g.drawLine( iconLeft-5,6, iconLeft-5,getHeight()-6);

          g.setColor( Utils.getBrillo());
          g.drawLine( iconLeft-4,6, iconLeft-4,getHeight()-6);
        }

      }

      if ( !iconOnly && comboBox != null ) {
        ListCellRenderer renderer = comboBox.getRenderer();
        Component c;
        boolean renderPressed = getModel().isPressed();
        c = renderer.getListCellRendererComponent( listBox, comboBox.getSelectedItem(), -1, renderPressed, false);
        c.setFont(rendererPane.getFont());

        if ( model.isArmed() && model.isPressed() ) {
          c.setForeground( comboBox.getForeground());
          c.setBackground( getBackground());
        }
        else if ( !comboBox.isEnabled() ) {
          if ( isOpaque() ) {
            c.setBackground(UIManager.getColor("ComboBox.disabledBackground"));
          }
          c.setForeground(UIManager.getColor("ComboBox.disabledForeground"));
        }
        else {
          c.setForeground( comboBox.getForeground());
          c.setBackground( comboBox.getBackground());
        }

        int cWidth = width - (insets.right + iconWidth);

        boolean shouldValidate = false;
        if (c instanceof JPanel)  {
          shouldValidate = true;
        }

        if (leftToRight) {
          rendererPane.paintComponent( g, c, this, left, top, cWidth, height, shouldValidate );
        }
        else {
          rendererPane.paintComponent( g, c, this, left + iconWidth, top, cWidth, height, shouldValidate );
        }
      }
    }
  }
  
  //////////////////////////
  
  public class MiML extends MouseAdapter implements FocusListener {
    protected void refresh() {
      if ( comboBox != null && comboBox.getParent() != null ) {
        comboBox.getParent().repaint( comboBox.getX()-5, comboBox.getY()-5, 
                                      comboBox.getWidth()+10, comboBox.getHeight()+10);
      }
    }
    
    public void mouseExited( MouseEvent e) {
      rollover = false;
      refresh();
    }
    
    public void mouseEntered( MouseEvent e) {
      rollover = true;
      refresh();
    }
    
    public void focusGained( FocusEvent e) {
      focus = true;
      refresh();
    }
      
    public void focusLost( FocusEvent e) {
      focus = false;
      refresh();
    }
  }
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日本电影亚洲天堂一区| 99久久久久免费精品国产| 国产精品天美传媒沈樵| 久久影院午夜论| 欧美mv日韩mv亚洲| 日韩亚洲欧美综合| 欧美大片免费久久精品三p| 欧美日韩国产乱码电影| 欧美精品九九99久久| 7878成人国产在线观看| 欧美一级日韩免费不卡| 精品久久一区二区三区| 久久奇米777| 欧美激情一区二区在线| 中文字幕制服丝袜一区二区三区 | 亚洲视频在线观看三级| 最新中文字幕一区二区三区| 亚洲人成人一区二区在线观看| 一区二区高清免费观看影视大全 | 在线视频国内自拍亚洲视频| 欧美图区在线视频| 欧美成人精品高清在线播放| 久久精品视频在线看| 亚洲视频免费观看| 亚洲成a人在线观看| 卡一卡二国产精品| 久久精品国产成人一区二区三区 | 亚洲综合图片区| 日韩高清不卡一区| 国产大陆a不卡| 欧美亚洲一区二区三区四区| 日韩欧美精品在线| 亚洲人成亚洲人成在线观看图片 | 欧美成人在线直播| 亚洲欧洲韩国日本视频| 午夜精品久久久久久久99水蜜桃| 久久99最新地址| 91网站最新网址| 日韩片之四级片| 亚洲乱码国产乱码精品精的特点 | 日本亚洲最大的色成网站www| 国产麻豆成人传媒免费观看| 在线欧美日韩精品| 国产香蕉久久精品综合网| 亚洲国产一区二区三区 | 国产精品一区二区久激情瑜伽| 国产.欧美.日韩| 欧美二区在线观看| 1024国产精品| 蜜桃一区二区三区在线观看| 97精品超碰一区二区三区| 精品国产乱码久久久久久蜜臀| 亚洲欧美一区二区三区孕妇| 国产成人在线视频网站| 欧美日韩电影一区| 亚洲欧洲日产国码二区| 国产伦理精品不卡| 日韩欧美激情在线| 日本欧美加勒比视频| 91久久一区二区| 国产色91在线| 国产在线精品不卡| 欧美精品在线观看播放| 亚洲一区免费视频| 久久综合九色欧美综合狠狠 | 欧美在线制服丝袜| 久久亚洲一区二区三区四区| 丝袜a∨在线一区二区三区不卡| 色妞www精品视频| 国产精品激情偷乱一区二区∴| 黄一区二区三区| 欧美变态凌虐bdsm| 久久电影国产免费久久电影 | 国产一区二区三区美女| 91麻豆精品国产91久久久资源速度 | 日本一区二区三区四区在线视频| 久久国产精品72免费观看| 5566中文字幕一区二区电影| 亚洲sss视频在线视频| 欧美日韩中文另类| 天天av天天翘天天综合网| 91久久精品国产91性色tv| 日韩一区在线看| 91香蕉视频污在线| 亚洲自拍偷拍综合| 欧美日韩精品欧美日韩精品| 天天av天天翘天天综合网色鬼国产 | 亚洲妇熟xx妇色黄| 欧美久久婷婷综合色| 奇米色777欧美一区二区| 欧美一级久久久| 极品尤物av久久免费看| 国产人妖乱国产精品人妖| 大桥未久av一区二区三区中文| 国产精品污www在线观看| 99久久99精品久久久久久| 亚洲综合免费观看高清完整版 | 欧美精品一级二级| 久久国产欧美日韩精品| 欧美激情一区二区在线| 99re热视频这里只精品| 午夜激情综合网| 欧美xfplay| www.爱久久.com| 亚洲国产wwwccc36天堂| 欧美成人综合网站| 99国产精品国产精品久久| 亚洲高清在线视频| 精品免费视频.| 99精品视频在线免费观看| 亚洲国产精品一区二区久久恐怖片| 欧美一区二区网站| 成人精品免费看| 午夜免费欧美电影| 国产欧美一区在线| 91麻豆精品国产91久久久资源速度| 国产高清精品久久久久| 午夜精品一区二区三区电影天堂| 久久人人97超碰com| 欧美视频精品在线观看| 国产99久久久精品| 日本欧美在线看| 亚洲日本va午夜在线电影| 日韩精品专区在线影院观看| 一本色道久久综合亚洲91| 黑人精品欧美一区二区蜜桃| 亚洲综合色噜噜狠狠| 国产精品少妇自拍| 日韩欧美国产综合在线一区二区三区| 91捆绑美女网站| 国产999精品久久久久久绿帽| 午夜精品国产更新| 亚洲欧美国产三级| 国产夜色精品一区二区av| 欧美日韩aaaaa| 日本道在线观看一区二区| 成人午夜在线视频| 国产一区二区调教| 在线成人午夜影院| 精品综合久久久久久8888| 亚洲国产wwwccc36天堂| 亚洲精品久久7777| 中文字幕免费不卡在线| 精品国产伦一区二区三区免费| 欧美日精品一区视频| 色综合天天综合网天天狠天天| 91精品欧美久久久久久动漫| 99精品欧美一区二区三区小说 | 精品久久久久香蕉网| 欧美丰满嫩嫩电影| 欧美日韩亚州综合| 欧美综合天天夜夜久久| 色婷婷av一区二区三区软件| 99热在这里有精品免费| 成人国产视频在线观看| 成人性视频网站| 成人av在线资源网| 91老师国产黑色丝袜在线| 91首页免费视频| 日本精品裸体写真集在线观看| 97久久超碰国产精品| 99精品久久99久久久久| 91在线观看下载| 欧洲生活片亚洲生活在线观看| 99久久精品免费精品国产| av电影天堂一区二区在线| 91在线视频播放| 91丨九色丨尤物| 欧美日韩一区二区在线视频| 欧美在线观看视频在线| 欧美一区二区在线免费播放| 欧美一区二区三区爱爱| 26uuu亚洲综合色欧美 | 亚洲视频电影在线| 亚洲成a人v欧美综合天堂下载 | 久久久国际精品| 成人欧美一区二区三区1314 | 欧美日韩www| 久久综合中文字幕| 国产偷v国产偷v亚洲高清| 亚洲日本一区二区| 麻豆91在线播放| 国产91综合一区在线观看| 在线影院国内精品| 日韩女优制服丝袜电影| 国产精品亲子伦对白| 亚洲高清视频在线| 久久精品国产亚洲一区二区三区| 国产精品白丝av| 欧美午夜寂寞影院| 久久久久高清精品| 亚洲午夜精品在线| 国产一区二区三区在线观看免费视频| 丰满放荡岳乱妇91ww| 日本高清无吗v一区| 26uuu国产电影一区二区| 亚洲人午夜精品天堂一二香蕉| 蜜臀久久99精品久久久久宅男| 成人v精品蜜桃久久一区| 这里只有精品电影|