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

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

?? basicgraphicsutils.java

?? java1.6眾多例子參考
?? JAVA
字號:
/* * @(#)BasicGraphicsUtils.java	1.63 05/11/30 * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. */package javax.swing.plaf.basic;import javax.swing.*;import java.awt.Component;import java.awt.Color;import java.awt.Dimension;import java.awt.Font;import java.awt.FontMetrics;import java.awt.Graphics;import java.awt.Insets;import java.awt.Rectangle;import java.awt.event.KeyEvent;import sun.swing.SwingUtilities2;/* * @version 1.44 02/11/99 * @author Hans Muller */public class BasicGraphicsUtils{    private static final Insets GROOVE_INSETS = new Insets(2, 2, 2, 2);    private static final Insets ETCHED_INSETS = new Insets(2, 2, 2, 2);    public static void drawEtchedRect(Graphics g, int x, int y, int w, int h,                                      Color shadow, Color darkShadow,                                      Color highlight, Color lightHighlight)    {        Color oldColor = g.getColor();  // Make no net change to g        g.translate(x, y);        g.setColor(shadow);        g.drawLine(0, 0, w-1, 0);      // outer border, top        g.drawLine(0, 1, 0, h-2);      // outer border, left        g.setColor(darkShadow);        g.drawLine(1, 1, w-3, 1);      // inner border, top        g.drawLine(1, 2, 1, h-3);      // inner border, left        g.setColor(lightHighlight);        g.drawLine(w-1, 0, w-1, h-1);  // outer border, bottom        g.drawLine(0, h-1, w-1, h-1);  // outer border, right        g.setColor(highlight);        g.drawLine(w-2, 1, w-2, h-3);  // inner border, right        g.drawLine(1, h-2, w-2, h-2);  // inner border, bottom        g.translate(-x, -y);        g.setColor(oldColor);    }    /**     * Returns the amount of space taken up by a border drawn by     * <code>drawEtchedRect()</code>     *     * @return  the inset of an etched rect     */    public static Insets getEtchedInsets() {        return ETCHED_INSETS;    }    public static void drawGroove(Graphics g, int x, int y, int w, int h,                                  Color shadow, Color highlight)    {        Color oldColor = g.getColor();  // Make no net change to g        g.translate(x, y);        g.setColor(shadow);        g.drawRect(0, 0, w-2, h-2);        g.setColor(highlight);        g.drawLine(1, h-3, 1, 1);        g.drawLine(1, 1, w-3, 1);        g.drawLine(0, h-1, w-1, h-1);        g.drawLine(w-1, h-1, w-1, 0);        g.translate(-x, -y);        g.setColor(oldColor);    }    /**     * Returns the amount of space taken up by a border drawn by     * <code>drawGroove()</code>     *     * @return  the inset of a groove border     */    public static Insets getGrooveInsets() {        return GROOVE_INSETS;    }    public static void drawBezel(Graphics g, int x, int y, int w, int h,                                  boolean isPressed, boolean isDefault,                                  Color shadow, Color darkShadow,                                  Color highlight, Color lightHighlight)    {        Color oldColor = g.getColor();  // Make no net change to g        g.translate(x, y);                if (isPressed && isDefault) {            g.setColor(darkShadow);            g.drawRect(0, 0, w - 1, h - 1);            g.setColor(shadow);            g.drawRect(1, 1, w - 3, h - 3);        } else if (isPressed) {            drawLoweredBezel(g, x, y, w, h,                             shadow, darkShadow, highlight, lightHighlight);        } else if (isDefault) {            g.setColor(darkShadow);                   g.drawRect(0, 0, w-1, h-1);            g.setColor(lightHighlight);               g.drawLine(1, 1, 1, h-3);            g.drawLine(2, 1, w-3, 1);            g.setColor(highlight);            g.drawLine(2, 2, 2, h-4);            g.drawLine(3, 2, w-4, 2);            g.setColor(shadow);            g.drawLine(2, h-3, w-3, h-3);            g.drawLine(w-3, 2, w-3, h-4);            g.setColor(darkShadow);                    g.drawLine(1, h-2, w-2, h-2);            g.drawLine(w-2, h-2, w-2, 1);        } else {            g.setColor(lightHighlight);                g.drawLine(0, 0, 0, h-1);            g.drawLine(1, 0, w-2, 0);            g.setColor(highlight);            g.drawLine(1, 1, 1, h-3);            g.drawLine(2, 1, w-3, 1);            g.setColor(shadow);            g.drawLine(1, h-2, w-2, h-2);            g.drawLine(w-2, 1, w-2, h-3);            g.setColor(darkShadow);                     g.drawLine(0, h-1, w-1, h-1);            g.drawLine(w-1, h-1, w-1, 0);        }	g.translate(-x, -y);	g.setColor(oldColor);    }    public static void drawLoweredBezel(Graphics g, int x, int y, int w, int h,                                        Color shadow, Color darkShadow,                                         Color highlight, Color lightHighlight)  {        g.setColor(darkShadow);            g.drawLine(0, 0, 0, h-1);        g.drawLine(1, 0, w-2, 0);         g.setColor(shadow);        g.drawLine(1, 1, 1, h-2);        g.drawLine(1, 1, w-3, 1);         g.setColor(lightHighlight);                 g.drawLine(0, h-1, w-1, h-1);        g.drawLine(w-1, h-1, w-1, 0);        g.setColor(highlight);        g.drawLine(1, h-2, w-2, h-2);        g.drawLine(w-2, h-2, w-2, 1);     }    /** Draw a string with the graphics <code>g</code> at location (x,y)     *  just like <code>g.drawString</code> would.     *  The first occurrence of <code>underlineChar</code>     *  in text will be underlined. The matching algorithm is     *  not case sensitive.     */    public static void drawString(Graphics g,String text,int underlinedChar,int x,int y) {        int index=-1;        if (underlinedChar != '\0') {            char uc = Character.toUpperCase((char)underlinedChar);            char lc = Character.toLowerCase((char)underlinedChar);            int uci = text.indexOf(uc);            int lci = text.indexOf(lc);            if(uci == -1) {                index = lci;            }            else if(lci == -1) {                index = uci;            }            else {                index = (lci < uci) ? lci : uci;            }        }        drawStringUnderlineCharAt(g, text, index, x, y);    }    /**     * Draw a string with the graphics <code>g</code> at location     * (<code>x</code>, <code>y</code>)     * just like <code>g.drawString</code> would.     * The character at index <code>underlinedIndex</code>     * in text will be underlined. If <code>index</code> is beyond the     * bounds of <code>text</code> (including < 0), nothing will be     * underlined.     *     * @param g Graphics to draw with     * @param text String to draw     * @param underlinedIndex Index of character in text to underline     * @param x x coordinate to draw at     * @param y y coordinate to draw at     * @since 1.4     */    public static void drawStringUnderlineCharAt(Graphics g, String text,                           int underlinedIndex, int x,int y) {        SwingUtilities2.drawStringUnderlineCharAt(null, g, text,                                                  underlinedIndex, x, y);    }    public static void drawDashedRect(Graphics g,int x,int y,int width,int height) {        int vx,vy;        // draw upper and lower horizontal dashes        for (vx = x; vx < (x + width); vx+=2) {            g.fillRect(vx, y, 1, 1);            g.fillRect(vx, y + height-1, 1, 1);        }        // draw left and right vertical dashes        for (vy = y; vy < (y + height); vy+=2) {	    g.fillRect(x, vy, 1, 1);            g.fillRect(x+width-1, vy, 1, 1);        }    }    public static Dimension getPreferredButtonSize(AbstractButton b, int textIconGap)    {        if(b.getComponentCount() > 0) {            return null;        }        Icon icon = (Icon) b.getIcon();        String text = b.getText();        Font font = b.getFont();        FontMetrics fm = b.getFontMetrics(font);                  Rectangle iconR = new Rectangle();        Rectangle textR = new Rectangle();        Rectangle viewR = new Rectangle(Short.MAX_VALUE, Short.MAX_VALUE);        SwingUtilities.layoutCompoundLabel(            (JComponent) b, fm, text, icon,            b.getVerticalAlignment(), b.getHorizontalAlignment(),            b.getVerticalTextPosition(), b.getHorizontalTextPosition(),            viewR, iconR, textR, (text == null ? 0 : textIconGap)        );        /* The preferred size of the button is the size of          * the text and icon rectangles plus the buttons insets.         */        Rectangle r = iconR.union(textR);        Insets insets = b.getInsets();        r.width += insets.left + insets.right;        r.height += insets.top + insets.bottom;        return r.getSize();    }        /*     * Convenience function for determining ComponentOrientation.  Helps us     * avoid having Munge directives throughout the code.     */    static boolean isLeftToRight( Component c ) {        return c.getComponentOrientation().isLeftToRight();    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩五月天| 1024精品合集| 亚洲美女一区二区三区| 午夜影视日本亚洲欧洲精品| 国产精品影视网| 5566中文字幕一区二区电影| 欧美国产欧美综合| 久久av资源网| 欧美电影影音先锋| 最新国产の精品合集bt伙计| 精品一区二区三区免费观看 | 欧美日韩国产精品自在自线| 欧美电视剧在线看免费| 亚洲在线观看免费| 99久久精品情趣| 久久久久综合网| 精品一区二区三区日韩| 欧美老肥妇做.爰bbww视频| 亚洲女与黑人做爰| 成人国产精品免费观看视频| 欧美mv和日韩mv国产网站| 偷拍与自拍一区| 欧美性大战久久久久久久| 国产精品麻豆99久久久久久| 国产老肥熟一区二区三区| 制服丝袜激情欧洲亚洲| 视频一区二区三区在线| 欧美日韩一二区| 亚洲一区二区3| 色综合久久久网| 亚洲另类色综合网站| 丁香激情综合国产| 国产人久久人人人人爽| 国产成人精品三级| 国产精品青草久久| 91在线视频免费观看| 亚洲人xxxx| 色偷偷久久一区二区三区| 国产精品白丝在线| 一本色道a无线码一区v| 亚洲伊人伊色伊影伊综合网| 欧美在线免费播放| 日本少妇一区二区| 欧美一区二区三区视频| 麻豆精品新av中文字幕| 精品国产区一区| 国产福利一区在线| 国产精品久久久久久久久免费桃花| 成人激情午夜影院| 一区二区三区久久| 91精品国产91久久久久久一区二区 | 日韩电影免费一区| 日韩一区二区三区在线| 国产精品乡下勾搭老头1| 国产三级欧美三级日产三级99| 懂色中文一区二区在线播放| 亚洲美女淫视频| 欧美一区二区三区精品| 蜜桃视频第一区免费观看| 337p日本欧洲亚洲大胆色噜噜| 国产不卡视频在线播放| 亚洲黄一区二区三区| 欧美日韩国产首页| 国产精品亚洲午夜一区二区三区| 国产精品麻豆久久久| 欧美高清激情brazzers| 国产美女娇喘av呻吟久久| 亚洲欧美日韩国产中文在线| 3atv在线一区二区三区| 高清成人在线观看| 五月天激情综合| 日本一区二区三区电影| 在线视频国内自拍亚洲视频| 国产在线乱码一区二区三区| 亚洲欧美日韩中文字幕一区二区三区 | 午夜精品久久久久久久99樱桃| 日韩手机在线导航| 色94色欧美sute亚洲13| 国内成人精品2018免费看| 亚洲国产人成综合网站| 日本一区二区免费在线| 欧美日韩亚洲另类| caoporn国产精品| 美美哒免费高清在线观看视频一区二区| 中文字幕乱码亚洲精品一区| 欧美日韩一区二区三区在线看| 国产乱码精品一区二区三区五月婷| 亚洲精品国产第一综合99久久| 欧美成人一区二区三区片免费| 91搞黄在线观看| av一区二区不卡| 免费精品视频在线| 亚洲成人一二三| 亚洲欧洲av一区二区三区久久| 日韩欧美视频一区| 欧美日韩国产精品自在自线| 色综合亚洲欧洲| 不卡视频一二三四| 国产精选一区二区三区| 日韩中文字幕1| 亚洲综合小说图片| 亚洲激情欧美激情| 国产精品第13页| 中文无字幕一区二区三区| ww亚洲ww在线观看国产| 欧美一卡二卡三卡| 91精品国产91久久综合桃花| 欧美日韩精品一区视频| 欧美性受xxxx| 欧美在线观看视频一区二区| 91久久精品国产91性色tv| thepron国产精品| 成人精品视频一区二区三区尤物| 强制捆绑调教一区二区| 亚洲成人av电影| 亚洲线精品一区二区三区| 亚洲综合图片区| 亚洲在线成人精品| 伊人开心综合网| 一区二区三区欧美在线观看| 亚洲免费大片在线观看| 樱桃视频在线观看一区| 亚洲男女一区二区三区| 亚洲欧美日韩一区二区 | 色吊一区二区三区| 欧美体内she精视频| 欧美日韩精品福利| 欧美一二三区在线观看| 欧美成人一区二区三区在线观看| 日韩视频一区二区| 国产亚洲欧美日韩日本| 国产午夜一区二区三区| 一色桃子久久精品亚洲| 亚洲综合一区在线| 天天综合网天天综合色| 日本女优在线视频一区二区| 韩国一区二区在线观看| 国产大陆a不卡| 日本福利一区二区| 91精品国产综合久久精品app| 欧美电影免费观看完整版| 久久久综合激的五月天| 亚洲日本青草视频在线怡红院| 亚洲成人激情综合网| 精品在线免费视频| 99久久亚洲一区二区三区青草| 在线欧美日韩国产| 精品国偷自产国产一区| 国产精品的网站| 香蕉乱码成人久久天堂爱免费| 精品在线视频一区| 色播五月激情综合网| 欧美mv和日韩mv国产网站| 中文字幕一区二区不卡| 偷窥国产亚洲免费视频| 从欧美一区二区三区| 欧美裸体bbwbbwbbw| 国产日韩精品视频一区| 性做久久久久久免费观看| 国产成人综合在线| 9191久久久久久久久久久| 国产精品麻豆网站| 免费成人av在线| 91婷婷韩国欧美一区二区| 日韩欧美国产不卡| 一区二区三区四区不卡视频| 国产一区二区三区| 欧美久久高跟鞋激| 亚洲视频一区二区在线观看| 精品一区中文字幕| 欧美日韩在线不卡| 亚洲老司机在线| 国产福利不卡视频| 精品乱码亚洲一区二区不卡| 亚洲精品视频免费观看| 丰满亚洲少妇av| xf在线a精品一区二区视频网站| 午夜精品福利久久久| 99久久99久久精品国产片果冻| 久久久精品国产99久久精品芒果| 天天亚洲美女在线视频| 色悠久久久久综合欧美99| 国产精品欧美一级免费| 国产美女娇喘av呻吟久久| 日韩欧美一区二区在线视频| 亚洲国产aⅴ天堂久久| 色偷偷久久一区二区三区| 国产精品沙发午睡系列990531| 精彩视频一区二区| 欧美一级黄色录像| 日本中文字幕不卡| 欧美一区二区在线免费观看| 亚洲一区二区五区| 91激情在线视频| 亚洲最大的成人av| 欧美色图激情小说| 丝袜亚洲另类欧美综合| 欧美剧在线免费观看网站| 亚洲成a人片在线不卡一二三区| 色综合欧美在线|