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

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

?? font2dtest.java

?? 一個小公司要求給寫的很簡單的任務(wù)管理系統(tǒng)。
?? JAVA
?? 第 1 頁 / 共 3 頁
字號:
/* * @(#)Font2DTest.java	1.28 05/11/17 *  * Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved. *  * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: *  * -Redistribution of source code must retain the above copyright notice, this *  list of conditions and the following disclaimer. *  * -Redistribution in binary form must reproduce the above copyright notice,  *  this list of conditions and the following disclaimer in the documentation *  and/or other materials provided with the distribution. *  * Neither the name of Sun Microsystems, Inc. or the names of contributors may  * be used to endorse or promote products derived from this software without  * specific prior written permission. *  * This software is provided "AS IS," without a warranty of any kind. ALL  * EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES, INCLUDING * ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE * OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN MIDROSYSTEMS, INC. ("SUN") * AND ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY LICENSEE * AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THIS SOFTWARE OR ITS * DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST  * REVENUE, PROFIT OR DATA, OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL,  * INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY  * OF LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE,  * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. *  * You acknowledge that this software is not designed, licensed or intended * for use in the design, construction, operation or maintenance of any * nuclear facility. *//* * @(#)Font2DTest.java	1.28 05/11/17 */import java.awt.Component;import java.awt.BorderLayout;import java.awt.CheckboxGroup;import java.awt.Container;import java.awt.Dimension;import java.awt.Font;import java.awt.Graphics;import java.awt.GraphicsEnvironment;import java.awt.GridBagConstraints;import java.awt.GridBagLayout;import java.awt.GridLayout;import java.awt.Insets;import java.awt.Toolkit;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.ItemEvent;import java.awt.event.ItemListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import java.awt.image.BufferedImage;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.util.EnumSet;import java.util.StringTokenizer;import java.util.BitSet;import javax.swing.*;import javax.swing.event.*;/** * Font2DTest.java * * @version @(#)Font2DTest.java	1.2 00/08/22 * @author Shinsuke Fukuda * @author Ankit Patel [Conversion to Swing - 01/07/30]  *//// Main Font2DTest Classpublic final class Font2DTest extends JPanel    implements ActionListener, ItemListener, ChangeListener {    /// JFrame that will contain Font2DTest    private final JFrame parent;    /// FontPanel class that will contain all graphical output    private final FontPanel fp;    /// RangeMenu class that contains info about the unicode ranges    private final RangeMenu rm;    /// Other menus to set parameters for text drawing    private final ChoiceV2 fontMenu;    private final JTextField sizeField;    private final ChoiceV2 styleMenu;    private final ChoiceV2 textMenu;    private int currentTextChoice = 0;    private final ChoiceV2 transformMenu;    private final ChoiceV2 transformMenuG2;        private final ChoiceV2 methodsMenu;    private final JComboBox antiAliasMenu;    private final JComboBox fracMetricsMenu;        private final JSlider contrastSlider;    /// CheckboxMenuItems    private CheckboxMenuItemV2 displayGridCBMI;    private CheckboxMenuItemV2 force16ColsCBMI;    private CheckboxMenuItemV2 showFontInfoCBMI;    /// JDialog boxes    private JDialog userTextDialog;    private JTextArea userTextArea;    private JDialog printDialog;    private JDialog fontInfoDialog;    private LabelV2 fontInfos[] = new LabelV2[2];    private JFileChooser filePromptDialog = null;    private ButtonGroup printCBGroup;    private JRadioButton printModeCBs[] = new JRadioButton[3];    /// Status bar    private final LabelV2 statusBar;    private int fontStyles [] = {Font.PLAIN, Font.BOLD, Font.ITALIC, Font.BOLD | Font.ITALIC};    /// Text filename    private String tFileName;    // Enabled or disabled status of canDisplay check    private static boolean canDisplayCheck = true;    /// Initialize GUI variables and its layouts    public Font2DTest( JFrame f, boolean isApplet ) {        parent = f;                rm = new RangeMenu( this, parent );        fp = new FontPanel( this, parent );        statusBar = new LabelV2("");        fontMenu = new ChoiceV2( this, canDisplayCheck );         sizeField = new JTextField( "12", 3 );        sizeField.addActionListener( this );        styleMenu = new ChoiceV2( this );        textMenu = new ChoiceV2( ); // listener added later        transformMenu = new ChoiceV2( this );        transformMenuG2 = new ChoiceV2( this );                methodsMenu = new ChoiceV2( this );        antiAliasMenu =	    new JComboBox(EnumSet.allOf(FontPanel.AAValues.class).toArray());	antiAliasMenu.addActionListener(this);        fracMetricsMenu =	    new JComboBox(EnumSet.allOf(FontPanel.FMValues.class).toArray());	fracMetricsMenu.addActionListener(this);	contrastSlider = new JSlider(JSlider.HORIZONTAL, 100, 250,				 FontPanel.getDefaultLCDContrast().intValue());	contrastSlider.setEnabled(false);	contrastSlider.setMajorTickSpacing(20);	contrastSlider.setMinorTickSpacing(10);	contrastSlider.setPaintTicks(true);	contrastSlider.setPaintLabels(true);	contrastSlider.addChangeListener(this);        setupPanel();        setupMenu( isApplet );        setupDialog( isApplet );        if(canDisplayCheck) {            fireRangeChanged();        }    }    /// Set up the main interface panel    private void setupPanel() {        GridBagLayout gbl = new GridBagLayout();        GridBagConstraints gbc = new GridBagConstraints();        gbc.fill = GridBagConstraints.HORIZONTAL;        gbc.weightx = 1;        gbc.insets = new Insets( 2, 0, 2, 2 );        this.setLayout( gbl );        addLabeledComponentToGBL( "Font: ", fontMenu, gbl, gbc, this );        addLabeledComponentToGBL( "Size: ", sizeField, gbl, gbc, this );        gbc.gridwidth = GridBagConstraints.REMAINDER;        addLabeledComponentToGBL( "Font Transform:",				  transformMenu, gbl, gbc, this );        gbc.gridwidth = 1;        addLabeledComponentToGBL( "Range: ", rm, gbl, gbc, this );        addLabeledComponentToGBL( "Style: ", styleMenu, gbl, gbc, this );        gbc.gridwidth = GridBagConstraints.REMAINDER;        addLabeledComponentToGBL( "Graphics Transform: ",				  transformMenuG2, gbl, gbc, this );	        gbc.gridwidth = 1;        gbc.anchor = GridBagConstraints.WEST;        addLabeledComponentToGBL( "Method: ", methodsMenu, gbl, gbc, this );	addLabeledComponentToGBL("", null, gbl, gbc, this);        gbc.anchor = GridBagConstraints.EAST;        gbc.gridwidth = GridBagConstraints.REMAINDER;        addLabeledComponentToGBL( "Text to use:", textMenu, gbl, gbc, this );	gbc.weightx=1;        gbc.gridwidth = 1;        gbc.fill = GridBagConstraints.HORIZONTAL;        gbc.anchor = GridBagConstraints.WEST;	addLabeledComponentToGBL("LCD contrast: ",				  contrastSlider, gbl, gbc, this);         gbc.gridwidth = 1;        gbc.fill = GridBagConstraints.NONE;	addLabeledComponentToGBL("Antialiasing: ",				  antiAliasMenu, gbl, gbc, this);        gbc.anchor = GridBagConstraints.EAST;               gbc.gridwidth = GridBagConstraints.REMAINDER;        	addLabeledComponentToGBL("Fractional metrics: ",				  fracMetricsMenu, gbl, gbc, this);         gbc.weightx = 1;        gbc.weighty = 1;        gbc.anchor = GridBagConstraints.WEST;        gbc.insets = new Insets( 2, 0, 0, 2 );        gbc.fill = GridBagConstraints.BOTH;        gbl.setConstraints( fp, gbc );        this.add( fp );        gbc.weighty = 0;        gbc.insets = new Insets( 0, 2, 0, 0 );        gbl.setConstraints( statusBar, gbc );        this.add( statusBar );    }    /// Adds a component to a container with a label to its left in GridBagLayout    private void addLabeledComponentToGBL( String name,                                           JComponent c,                                           GridBagLayout gbl,                                           GridBagConstraints gbc,                                           Container target ) {        LabelV2 l = new LabelV2( name );        GridBagConstraints gbcLabel = (GridBagConstraints) gbc.clone();        gbcLabel.insets = new Insets( 2, 2, 2, 0 );        gbcLabel.gridwidth = 1;        gbcLabel.weightx = 0;        if ( c == null )          c = new JLabel( "" );        gbl.setConstraints( l, gbcLabel );        target.add( l );        gbl.setConstraints( c, gbc );        target.add( c );    }    /// Sets up menu entries    private void setupMenu( boolean isApplet ) {        JMenu fileMenu = new JMenu( "File" );        JMenu optionMenu = new JMenu( "Option" );        fileMenu.add( new MenuItemV2( "Save Selected Options...", this ));        fileMenu.add( new MenuItemV2( "Load Options...", this ));        fileMenu.addSeparator();        fileMenu.add( new MenuItemV2( "Save as PNG...", this ));        fileMenu.add( new MenuItemV2( "Load PNG File to Compare...", this ));        fileMenu.add( new MenuItemV2( "Page Setup...", this ));        fileMenu.add( new MenuItemV2( "Print...", this ));        fileMenu.addSeparator();        if ( !isApplet )          fileMenu.add( new MenuItemV2( "Exit", this ));        else          fileMenu.add( new MenuItemV2( "Close", this ));        displayGridCBMI = new CheckboxMenuItemV2( "Display Grid", true, this );        force16ColsCBMI = new CheckboxMenuItemV2( "Force 16 Columns", false, this );        showFontInfoCBMI = new CheckboxMenuItemV2( "Display Font Info", false, this );        optionMenu.add( displayGridCBMI );        optionMenu.add( force16ColsCBMI );        optionMenu.add( showFontInfoCBMI );        JMenuBar mb = parent.getJMenuBar();        if ( mb == null )          mb = new JMenuBar();        mb.add( fileMenu );        mb.add( optionMenu );        parent.setJMenuBar( mb );        String fontList[] =          GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();        for ( int i = 0; i < fontList.length; i++ )          fontMenu.addItem( fontList[i] );        fontMenu.setSelectedItem( "Dialog" );        styleMenu.addItem( "Plain" );        styleMenu.addItem( "Bold" );        styleMenu.addItem( "Italic" );        styleMenu.addItem( "Bold Italic" );        transformMenu.addItem( "None" );        transformMenu.addItem( "Scale" );        transformMenu.addItem( "Shear" );        transformMenu.addItem( "Rotate" );        transformMenuG2.addItem( "None" );        transformMenuG2.addItem( "Scale" );        transformMenuG2.addItem( "Shear" );        transformMenuG2.addItem( "Rotate" );        methodsMenu.addItem( "drawString" );        methodsMenu.addItem( "drawChars" );        methodsMenu.addItem( "drawBytes" );        methodsMenu.addItem( "drawGlyphVector" );        methodsMenu.addItem( "TextLayout.draw" );        methodsMenu.addItem( "GlyphVector.getOutline + draw" );        methodsMenu.addItem( "TextLayout.getOutline + draw" );        textMenu.addItem( "Unicode Range" );        textMenu.addItem( "All Glyphs" );        textMenu.addItem( "User Text" );        textMenu.addItem( "Text File" );        textMenu.addActionListener ( this ); // listener added later so unneeded events not thrown    }    /// Sets up the all dialogs used in Font2DTest...    private void setupDialog( boolean isApplet ) {        if (!isApplet)         	filePromptDialog = new JFileChooser( );        else        	filePromptDialog = null;        /// Prepare user text dialog...        userTextDialog = new JDialog( parent, "User Text", false );        JPanel dialogTopPanel = new JPanel();        JPanel dialogBottomPanel = new JPanel();        LabelV2 message1 = new LabelV2( "Enter text below and then press update" );        LabelV2 message2 = new LabelV2( "(Unicode char can be denoted by \\uXXXX)" );        LabelV2 message3 = new LabelV2( "(Supplementary chars can be denoted by \\UXXXXXX)" );        userTextArea = new JTextArea( "Java2D!" );        ButtonV2 bUpdate = new ButtonV2( "Update", this );        userTextArea.setFont( new Font( "dialog", Font.PLAIN, 12 ));        dialogTopPanel.setLayout( new GridLayout( 3, 1 ));        dialogTopPanel.add( message1 );        dialogTopPanel.add( message2 );        dialogTopPanel.add( message3 );        dialogBottomPanel.add( bUpdate );        //ABP        JScrollPane userTextAreaSP = new JScrollPane(userTextArea);        userTextAreaSP.setPreferredSize(new Dimension(300, 100));        userTextDialog.getContentPane().setLayout( new BorderLayout() );        userTextDialog.getContentPane().add( "North", dialogTopPanel );        userTextDialog.getContentPane().add( "Center", userTextAreaSP );        userTextDialog.getContentPane().add( "South", dialogBottomPanel );        userTextDialog.pack();	userTextDialog.addWindowListener( new WindowAdapter() {            public void windowClosing( WindowEvent e ) {                userTextDialog.hide();            }        });        /// Prepare printing dialog...        printCBGroup = new ButtonGroup();        printModeCBs[ fp.ONE_PAGE ] =          new JRadioButton( "Print one page from currently displayed character/line",                         true );        printModeCBs[ fp.CUR_RANGE ] =          new JRadioButton( "Print all characters in currently selected range",                         false );        printModeCBs[ fp.ALL_TEXT ] =          new JRadioButton( "Print all lines of text",                         false );        LabelV2 l =          new LabelV2( "Note: Page range in native \"Print\" dialog will not affect the result" );        JPanel buttonPanel = new JPanel();        printModeCBs[ fp.ALL_TEXT ].setEnabled( false );        buttonPanel.add( new ButtonV2( "Print", this ));        buttonPanel.add( new ButtonV2( "Cancel", this ));        printDialog = new JDialog( parent, "Print...", true );        printDialog.setResizable( false );	printDialog.addWindowListener( new WindowAdapter() {            public void windowClosing( WindowEvent e ) {                printDialog.hide();            }        });        printDialog.getContentPane().setLayout( new GridLayout( printModeCBs.length + 2, 1 ));        printDialog.getContentPane().add( l );        for ( int i = 0; i < printModeCBs.length; i++ ) {            printCBGroup.add( printModeCBs[i] );            printDialog.getContentPane().add( printModeCBs[i] );        }        printDialog.getContentPane().add( buttonPanel );

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美在线观看视频一区二区三区| 国产精品 欧美精品| 欧洲另类一二三四区| 亚洲欧美日韩在线不卡| 欧美体内she精视频| 视频一区视频二区中文| 欧美一区二区三区免费在线看 | 日本欧美一区二区| 91超碰这里只有精品国产| 久久电影网电视剧免费观看| 国产无人区一区二区三区| 99久久伊人精品| 亚洲成人三级小说| 精品久久久网站| 成人免费看黄yyy456| 一区二区三区高清| 日韩一级片网址| 成人国产免费视频| 亚洲国产裸拍裸体视频在线观看乱了 | 国产一区二区三区久久久| 久久久99精品久久| 色综合中文字幕国产| 乱一区二区av| 亚洲黄色小说网站| 日韩女优av电影在线观看| 99久久99久久久精品齐齐| 樱桃视频在线观看一区| 欧美一级精品大片| 成人av网在线| 久久精品二区亚洲w码| 国产欧美一区二区精品性色超碰| 欧美亚洲另类激情小说| 国产91高潮流白浆在线麻豆| 洋洋av久久久久久久一区| 欧美tk—视频vk| 日本高清成人免费播放| 国产精品综合二区| 亚洲成a人片综合在线| 久久精品综合网| 91.麻豆视频| 91视频91自| 国产精品亚洲视频| 午夜影院久久久| 亚洲视频在线一区| 精品国内二区三区| 欧美日韩一区二区电影| 成人性生交大合| 老色鬼精品视频在线观看播放| 亚洲免费电影在线| 中文字幕的久久| 精品久久人人做人人爽| 欧美日韩国产精选| 色综合久久九月婷婷色综合| 国产精品自在欧美一区| 老司机午夜精品| 日韩高清不卡一区二区三区| 一区二区三区四区中文字幕| 日本一区二区三区免费乱视频 | 久久久九九九九| 精品日韩av一区二区| 欧美日韩精品一区二区| 日本电影欧美片| 99精品热视频| 99久久伊人精品| 成人白浆超碰人人人人| 国产69精品久久99不卡| 久久国产精品露脸对白| 日本欧美一区二区三区乱码| 日韩精品乱码免费| 日韩av电影免费观看高清完整版在线观看| 一区二区三区四区亚洲| 亚洲精品少妇30p| 亚洲欧美色图小说| 一区二区三区欧美日韩| 亚洲免费观看高清完整版在线| 亚洲欧美视频在线观看| 亚洲精品视频在线观看网站| 夜夜嗨av一区二区三区网页| 亚洲高清一区二区三区| 日韩高清欧美激情| 日本女人一区二区三区| 久久精品国产亚洲一区二区三区 | 国产毛片精品国产一区二区三区| 久久精品久久久精品美女| 精品一二三四在线| 国产精品资源在线看| 成人性色生活片| 99国产欧美久久久精品| 91久久精品日日躁夜夜躁欧美| 日本高清视频一区二区| 欧美肥胖老妇做爰| 欧美va亚洲va香蕉在线| 国产精品毛片久久久久久| 亚洲精品免费在线| 午夜久久久影院| 老司机精品视频线观看86| 国产精品99久久久久久有的能看| av色综合久久天堂av综合| 欧美在线高清视频| 日韩一区二区影院| 日本一区二区三级电影在线观看| 亚洲视频小说图片| 午夜精品久久久久久不卡8050| 免费成人在线播放| 高清国产一区二区三区| 91成人在线观看喷潮| 精品国产乱码久久久久久图片| 日本一区二区成人| 亚洲成人中文在线| 国产精品亚洲午夜一区二区三区| 97aⅴ精品视频一二三区| 制服丝袜日韩国产| 国产视频一区在线观看| 亚洲午夜激情网站| 国产精品1区2区3区在线观看| 91官网在线观看| 一区二区在线观看av| 免费成人在线视频观看| 91啪九色porn原创视频在线观看| 91超碰这里只有精品国产| 国产精品天美传媒| 喷水一区二区三区| 日本道精品一区二区三区| 久久久噜噜噜久噜久久综合| 亚洲午夜精品在线| 成人午夜激情视频| 日韩女优av电影| 亚洲自拍偷拍网站| 成人aaaa免费全部观看| 精品少妇一区二区三区视频免付费| 亚洲天堂福利av| 国产一区二区三区电影在线观看| 在线观看亚洲成人| 国产精品成人在线观看| 久久精品国产精品青草| 欧美性受xxxx黑人xyx| 国产欧美一区二区精品婷婷| 欧美a级理论片| 欧美系列亚洲系列| 国产精品国产自产拍高清av王其| 久久99久久99精品免视看婷婷 | 蜜桃av一区二区在线观看| 在线亚洲精品福利网址导航| 国产精品污网站| 国产精品一区二区在线观看不卡| 欧美一区二区福利在线| 亚洲成人免费视频| 日本道在线观看一区二区| 中文字幕一区二区三区乱码在线 | 国产精品麻豆99久久久久久| 麻豆精品久久久| 中文字幕日韩精品一区| 国产99精品国产| 欧美日韩不卡视频| 日韩毛片在线免费观看| 成人精品小蝌蚪| 久久精品无码一区二区三区| 久久99久久精品| 精品国产91洋老外米糕| 美美哒免费高清在线观看视频一区二区| 欧美天天综合网| 亚洲自拍与偷拍| 欧美日本在线播放| 青青草国产精品97视觉盛宴 | va亚洲va日韩不卡在线观看| 久久久美女艺术照精彩视频福利播放| 久久激情五月激情| 日韩三级视频中文字幕| 蜜臀av一区二区在线免费观看| 91精品国产一区二区三区| 日韩影院精彩在线| 日韩一区二区三区免费看| 六月婷婷色综合| 久久久午夜电影| 成人听书哪个软件好| 成人欧美一区二区三区小说| 色婷婷av一区| 青娱乐精品视频| 精品久久99ma| 国产成a人亚洲| 亚洲欧美色图小说| 欧美美女一区二区三区| 日韩vs国产vs欧美| 久久久久久久精| 99久久99久久精品国产片果冻| 一区二区三区日本| 欧美一区二区三区在| 韩国毛片一区二区三区| 亚洲欧洲成人自拍| 欧美日韩国产精品成人| 国产一区二区在线视频| 国产精品久久一卡二卡| 在线看日本不卡| 美女视频网站久久| 亚洲国产成人在线| 欧美视频在线观看一区| 精品一区二区精品| 一区二区三区欧美日| 久久一区二区三区国产精品| 91丨porny丨国产入口|