test.java

来自「swing 教程,与大家分享一下,哈哈,希望大家多多指教」· Java 代码 · 共 99 行

JAVA
99
字号
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;

import com.sun.java.swing.plaf.motif.MotifLookAndFeel;
import javax.swing.plaf.metal.MetalLookAndFeel;

import javax.swing.plaf.ColorUIResource;

public class Test extends JApplet {
	private JButton button = new JButton("App Resource");

	public void init() {
		Container contentPane = getContentPane();

		contentPane.add(new ControlPanel(), BorderLayout.NORTH);
		contentPane.add(button, BorderLayout.CENTER);
	}
	class ControlPanel extends JPanel {
		boolean resource = false;
		JButton colorSetButton = new JButton("Set Color ...");
		JCheckBox checkBox = new JCheckBox("UIResource");
		JRadioButton motifButton = new JRadioButton("Motif"),
					 metalButton = new JRadioButton("Metal");

		public ControlPanel() {
			ActionListener listener = new RadioHandler();
			ButtonGroup group = new ButtonGroup();

			group.add(motifButton);
			group.add(metalButton);

			motifButton.addActionListener(listener);
			metalButton.addActionListener(listener);

			metalButton.setSelected(true);

			add(motifButton);
			add(metalButton);
			add(Box.createHorizontalStrut(25));
			add(colorSetButton);
			add(checkBox);

			Font buttonFont = button.getFont();
			button.setFont(new Font(buttonFont.getFamily(),
						   Font.ITALIC, 56));

			colorSetButton.addActionListener(new ActionListener(){
				public void actionPerformed(ActionEvent e) {
					updateButtonColor();
				}
			});
			checkBox.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent e) {
					resource = checkBox.isSelected();
					updateButtonColor();
				}
			});
		}
		private void updateButtonColor() {
			Color c = JColorChooser.showDialog(
					getContentPane(), // parent component
					"Choose a Color", // title
					getBackground()); // initial color

			if(resource) {
				button.setText("UI Resource");
				button.setForeground(new ColorUIResource(c));
			}
			else {
				button.setText("App Resource");
				button.setForeground(c);
			}
		}
		class RadioHandler implements ActionListener {
			public void actionPerformed(ActionEvent e) {
				JRadioButton src = (JRadioButton)e.getSource();

				try {
					if(src == motifButton)
						UIManager.setLookAndFeel(
							"com.sun.java.swing.plaf." +
							"motif.MotifLookAndFeel");
					else if(src == metalButton)
						UIManager.setLookAndFeel(
						  "javax.swing.plaf.metal." +
						  "MetalLookAndFeel");
				}
				catch(Exception ex) {
					ex.printStackTrace();
				}
				SwingUtilities.updateComponentTreeUI(
												getContentPane());
			}
		}
	}
}

⌨️ 快捷键说明

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