⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 commonswing.java

📁 hsqldb是100%java实现的数据库,是一个开放源代码的JAVA数据库 l 具有标准的SQL语法和JAVA接口 l HSQLDB可以自由使用和分发 l 非常简洁和快速的
💻 JAVA
字号:
/* Copyright (c) 2001-2005, The HSQL Development Group * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * Redistributions of source code must retain the above copyright notice, this * list of conditions and the following disclaimer. * * Redistributions 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 the HSQL Development Group nor the names of its * contributors may be used to endorse or promote products derived from this * software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL HSQL DEVELOPMENT GROUP, HSQLDB.ORG, * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */package org.hsqldb.util;import java.awt.Dimension;import java.awt.Image;import java.awt.Toolkit;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JOptionPane;import javax.swing.SwingUtilities;import javax.swing.UIManager;// sqlbob@users 20020407 - patch 1.7.0 - reengineering// weconsultants@users 20041109 - patch 1.8.0 - enhancements://      Added Methods: setSwingLAF(), LookAndFeelInfo(), setFramePositon()//      errorMessage(String errorMessage),//      errorMessage(Exception exceptionMsg,//      Added: Ability to switch the current LAF while runing (Native,Java or Motif)/** * Common code in the Swing versions of DatabaseManager and Tranfer * * @author sqlbob@users * @version 1.7.2 * @since 1.7.0 */class CommonSwing {    protected static String messagerHeader = "Database Manager Swing Error";    protected static String Native         = "Native";    protected static String Java           = "Java";    protected static String Motif          = "Motif";    protected static String plaf           = "plaf";    protected static String GTK            = "GTK";    // (ulrivo): An actual Image.    static Image getIcon(String target) {        if (target.equalsIgnoreCase("SystemCursor")) {            return (new ImageIcon(                CommonSwing.class.getResource("Hourglass.gif")).getImage());        } else if (target.equalsIgnoreCase("Frame")) {            return (new ImageIcon(                CommonSwing.class.getResource("hsqldb.gif")).getImage());        } else if (target.equalsIgnoreCase("Execute")) {            return (new ImageIcon(                CommonSwing.class.getResource("run_exc.gif")).getImage());        } else if (target.equalsIgnoreCase("StatusRunning")) {            return (new ImageIcon(                CommonSwing.class.getResource("RedCircle.gif")).getImage());        } else if (target.equalsIgnoreCase("StatusReady")) {            return (new ImageIcon(                CommonSwing.class.getResource("GreenCircle.gif")).getImage());        } else if (target.equalsIgnoreCase("Clear")) {            return (new ImageIcon(                CommonSwing.class.getResource("Clear.png")).getImage());        } else if (target.equalsIgnoreCase("Problem")) {            return (new ImageIcon(                CommonSwing.class.getResource("problems.gif")).getImage());        } else if (target.equalsIgnoreCase("BoldFont")) {            return (new ImageIcon(                CommonSwing.class.getResource("Bold.gif")).getImage());        } else if (target.equalsIgnoreCase("ItalicFont")) {            return (new ImageIcon(                CommonSwing.class.getResource("Italic.gif")).getImage());        } else if (target.equalsIgnoreCase("ColorSelection")) {            return (new ImageIcon(                CommonSwing.class.getResource("Colors.png")).getImage());        } else if (target.equalsIgnoreCase("Close")) {            return (new ImageIcon(                CommonSwing.class.getResource("Close.png")).getImage());        } else {            return (null);        }    }    // (weconsultants@users: Callable errorMessage method    protected static void errorMessage(String errorMessage) {        /**         * Display Jpanel Error messages any text Errors. Overloads         * errorMessage(Exception exceptionMsg)         */        Object[] options = { "OK" };        JOptionPane.showOptionDialog(null, errorMessage, messagerHeader,                                     JOptionPane.DEFAULT_OPTION,                                     JOptionPane.WARNING_MESSAGE, null,                                     options, options[0]);        // DatabaseManagerSwing.StatusMessage(READY_STATUS);    }    public static void errorMessage(Exception exceptionMsg) {        errorMessage(exceptionMsg, false);    }    // (weconsultants@users: Callable errorMessage method    public static void errorMessage(Exception exceptionMsg, boolean quiet) {        /**         * Display Jpanel Error messages any SQL Errors. Overloads         * errorMessage(String e)         */        Object[] options = { "OK", };        JOptionPane.showOptionDialog(null, exceptionMsg, messagerHeader,                                     JOptionPane.DEFAULT_OPTION,                                     JOptionPane.ERROR_MESSAGE, null,                                     options, options[0]);        if (!quiet) {            exceptionMsg.printStackTrace();        }        // DatabaseManagerSwing.StatusMessage(READY_STATUS);    }    // (weconsultants@users: Callable setFramePositon method    static void setFramePositon(JFrame inTargetFrame) {        Dimension d    = Toolkit.getDefaultToolkit().getScreenSize();        Dimension size = inTargetFrame.getSize();        // (ulrivo): full size on screen with less than 640 width        if (d.width >= 640) {            inTargetFrame.setLocation((d.width - size.width) / 2,                                      (d.height - size.height) / 2);        } else {            inTargetFrame.setLocation(0, 0);            inTargetFrame.setSize(d);        }    }// (weconsultants@users: Commented out, Not need now. Was not being called anyway.. Could delete?//    static void setDefaultColor() {////        Color hsqlBlue = new Color(102, 153, 204);//        Color hsqlGreen = new Color(153, 204, 204);//        UIDefaults d = UIManager.getLookAndFeelDefaults();////        d.put("MenuBar.background", SystemColor.control);//        d.put("Menu.background", SystemColor.control);//        d.put("Menu.selectionBackground", hsqlBlue);//        d.put("MenuItem.background", SystemColor.menu);//        d.put("MenuItem.selectionBackground", hsqlBlue);//        d.put("Separator.foreground", SystemColor.controlDkShadow);//        d.put("Button.background", SystemColor.control);//        d.put("CheckBox.background", SystemColor.control);//        d.put("Label.background", SystemColor.control);//        d.put("Label.foreground", Color.black);//        d.put("Panel.background", SystemColor.control);//        d.put("PasswordField.selectionBackground", hsqlGreen);//        d.put("PasswordField.background", SystemColor.white);//        d.put("TextArea.selectionBackground", hsqlGreen);//        d.put("TextField.background", SystemColor.white);//        d.put("TextField.selectionBackground", hsqlGreen);//        d.put("TextField.background", SystemColor.white);//        d.put("ScrollBar.background", SystemColor.controlHighlight);//        d.put("ScrollBar.foreground", SystemColor.control);//        d.put("ScrollBar.track", SystemColor.controlHighlight);//        d.put("ScrollBar.trackHighlight", SystemColor.controlDkShadow);//        d.put("ScrollBar.thumb", SystemColor.control);//        d.put("ScrollBar.thumbHighlight", SystemColor.controlHighlight);//        d.put("ScrollBar.thumbDarkShadow", SystemColor.controlDkShadow);//        d.put("ScrollBar.thumbLightShadow", SystemColor.controlShadow);//        d.put("ComboBox.background", SystemColor.control);//        d.put("ComboBox.selectionBackground", hsqlBlue);//        d.put("Table.background", SystemColor.white);//        d.put("Table.selectionBackground", hsqlBlue);//        d.put("TableHeader.background", SystemColor.control);////        // This doesn't seem to work.//        d.put("SplitPane.background", SystemColor.control);//        d.put("Tree.selectionBackground", hsqlBlue);//        d.put("List.selectionBackground", hsqlBlue);//    }    // (weconsultants@users: Callable setSwingLAF method for changing LAF    static void setSwingLAF(java.awt.Component comp, String targetTheme) {        try {            if (targetTheme.equalsIgnoreCase(Native)) {                UIManager.setLookAndFeel(                    UIManager.getSystemLookAndFeelClassName());            } else if (targetTheme.equalsIgnoreCase(Java)) {                UIManager.setLookAndFeel(                    UIManager.getCrossPlatformLookAndFeelClassName());            } else if (targetTheme.equalsIgnoreCase(Motif)) {                UIManager.setLookAndFeel(                    "com.sun.java.swing.plaf.motif.MotifLookAndFeel");            }//            if (targetTheme.equalsIgnoreCase(plaf)){//                UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");//            }////            if (targetTheme.equalsIgnoreCase(GTK)){//                UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel");//            }            SwingUtilities.updateComponentTreeUI(comp);            if (comp instanceof java.awt.Frame) {                ((java.awt.Frame) comp).pack();            }        } catch (Exception e) {            errorMessage(e);        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -