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

📄 demomodule.java

📁 主要为一个空间信息管理系统
💻 JAVA
字号:
/* * Copyright (c) 2003 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: * * -Redistributions of source code must retain the above copyright *  notice, this list of conditions and the following disclaimer. * * -Redistribution in binary form must reproduct 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 AND ITS LICENSORS SHALL NOT * BE LIABLE FOR ANY DAMAGES OR LIABILITIES SUFFERED BY LICENSEE AS A RESULT * OF OR RELATING TO USE, MODIFICATION OR DISTRIBUTION OF THE 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 SOFTWARE, EVEN * IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. * * You acknowledge that Software is not designed, licensed or intended for * use in the design, construction, operation or maintenance of any nuclear * facility. *//* * @(#)DemoModule.java	1.14 03/01/23 */package com.sunking.swing;import javax.swing.*;import javax.swing.event.*;import javax.swing.text.*;import javax.swing.border.*;import javax.swing.colorchooser.*;import javax.swing.filechooser.*;import javax.accessibility.*;import java.awt.*;import java.awt.event.*;import java.beans.*;import java.util.*;import java.io.*;import java.applet.*;import java.net.*;/** * A generic SwingSet2 demo module * * @version 1.14 01/23/03 * @author Jeff Dinkins */public class DemoModule extends JApplet {    // The preferred size of the demo    private int PREFERRED_WIDTH = 680;    private int PREFERRED_HEIGHT = 600;    Border loweredBorder = new CompoundBorder(new SoftBevelBorder(SoftBevelBorder.LOWERED),					      new EmptyBorder(5,5,5,5));    // Premade convenience dimensions, for use wherever you need 'em.    public static Dimension HGAP2 = new Dimension(2,1);    public static Dimension VGAP2 = new Dimension(1,2);    public static Dimension HGAP5 = new Dimension(5,1);    public static Dimension VGAP5 = new Dimension(1,5);    public static Dimension HGAP10 = new Dimension(10,1);    public static Dimension VGAP10 = new Dimension(1,10);    public static Dimension HGAP15 = new Dimension(15,1);    public static Dimension VGAP15 = new Dimension(1,15);    public static Dimension HGAP20 = new Dimension(20,1);    public static Dimension VGAP20 = new Dimension(1,20);    public static Dimension HGAP25 = new Dimension(25,1);    public static Dimension VGAP25 = new Dimension(1,25);    public static Dimension HGAP30 = new Dimension(30,1);    public static Dimension VGAP30 = new Dimension(1,30);    private SwingSet2 swingset = null;    private JPanel panel = null;    private String resourceName = null;    private String iconPath = null;    private String sourceCode = null;    // Resource bundle for internationalized and accessible text    private ResourceBundle bundle = null;    public DemoModule(SwingSet2 swingset) {	this(swingset, null, null);    }    public DemoModule(SwingSet2 swingset, String resourceName, String iconPath) {	panel = new JPanel();	panel.setLayout(new BorderLayout());	this.resourceName = resourceName;	this.iconPath = iconPath;	this.swingset = swingset;	loadSourceCode();    }    public String getResourceName() {	return resourceName;    }    public JPanel getDemoPanel() {	return panel;    }    public SwingSet2 getSwingSet2() {	return swingset;    }    public String getString(String key) {	String value = "nada";	if(bundle == null) {	    if(getSwingSet2() != null) {		bundle = getSwingSet2().getResourceBundle();	    } else {		bundle = ResourceBundle.getBundle("resources.swingset");	    }	}	try {	    value = bundle.getString(key);	} catch (MissingResourceException e) {	    System.out.println("java.util.MissingResourceException: Couldn't find value for: " + key);	}	return value;    }    public char getMnemonic(String key) {	return (getString(key)).charAt(0);    }    public ImageIcon createImageIcon(String filename, String description) {	if(getSwingSet2() != null) {	    return getSwingSet2().createImageIcon(filename, description);	} else {	    String path = "/resources/images/" + filename;	    return new ImageIcon(getClass().getResource(path), description);	}    }    public String getSourceCode() {	return sourceCode;    }    public void loadSourceCode() {	if(getResourceName() != null) {	    String filename = "src/" + getResourceName() + ".java";	    sourceCode = new String("<html><body bgcolor=\"#ffffff\"><pre>");	    char[] buff = new char[50000];	    InputStream is;	    InputStreamReader isr;	    CodeViewer cv = new CodeViewer();	    URL url;	    try {		url = getClass().getResource(filename);		is = url.openStream();		isr = new InputStreamReader(is);		BufferedReader reader = new BufferedReader(isr);		// Read one line at a time, htmlize using super-spiffy		// html java code formating utility from www.CoolServlets.com		String line = reader.readLine();		while(line != null) {		    sourceCode += cv.syntaxHighlight(line) + " \n ";		    line = reader.readLine();		}		sourceCode += new String("</pre></body></html>");            } catch (Exception ex) {                sourceCode = "Could not load file: " + filename;            }	}    }    public String getName() {	return getString(getResourceName() + ".name");    };    public Icon getIcon() {	return createImageIcon(iconPath, getResourceName() + ".name");    };    public String getToolTip() {	return getString(getResourceName() + ".tooltip");    };    public void mainImpl() {	JFrame frame = new JFrame(getName());        frame.getContentPane().setLayout(new BorderLayout());	frame.getContentPane().add(getDemoPanel(), BorderLayout.CENTER);	getDemoPanel().setPreferredSize(new Dimension(PREFERRED_WIDTH, PREFERRED_HEIGHT));	frame.pack();	frame.show();    }    public JPanel createHorizontalPanel(boolean threeD) {        JPanel p = new JPanel();        p.setLayout(new BoxLayout(p, BoxLayout.X_AXIS));        p.setAlignmentY(TOP_ALIGNMENT);        p.setAlignmentX(LEFT_ALIGNMENT);        if(threeD) {            p.setBorder(loweredBorder);        }        return p;    }    public JPanel createVerticalPanel(boolean threeD) {        JPanel p = new JPanel();        p.setLayout(new BoxLayout(p, BoxLayout.Y_AXIS));        p.setAlignmentY(TOP_ALIGNMENT);        p.setAlignmentX(LEFT_ALIGNMENT);        if(threeD) {            p.setBorder(loweredBorder);        }        return p;    }    public static void main(String[] args) {	DemoModule demo = new DemoModule(null);	demo.mainImpl();    }    public void init() {        getContentPane().setLayout(new BorderLayout());        getContentPane().add(getDemoPanel(), BorderLayout.CENTER);    }}

⌨️ 快捷键说明

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