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

📄 test.java

📁 《Java2图形设计卷II:Swing》配套光盘源码
💻 JAVA
字号:
import javax.swing.*;
import javax.swing.text.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;

public class Test extends JApplet {
	private JTextArea textArea = new JTextArea("initial content");
	private JCheckBox cbox = new JCheckBox("keymap added");
	private Hashtable actionTable = new Hashtable();
	private Keymap originalKeymap, newKeymap;

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

		loadActionTable();
		originalKeymap = textArea.getKeymap();
		newKeymap = createKeymap();

		textArea.setFont(new Font("Dialog", Font.PLAIN, 24));

		contentPane.add(new ControlPanel(), BorderLayout.NORTH);
		contentPane.add(textArea, BorderLayout.CENTER);
	}
	private Keymap createKeymap() {
		Keymap map = JTextComponent.addKeymap("applet keymap",
									textArea.getKeymap());

		KeyStroke forwardKeyStroke = 
					KeyStroke.getKeyStroke(KeyEvent.VK_F,
					   					   InputEvent.ALT_MASK),
				  backwardKeyStroke =
					KeyStroke.getKeyStroke(KeyEvent.VK_B,
					   					   InputEvent.ALT_MASK);
		Action forwardAction =
					getAction(DefaultEditorKit.forwardAction),
			   backwardAction =
					getAction(DefaultEditorKit.backwardAction);

		map.addActionForKeyStroke(forwardKeyStroke,
								  forwardAction);
		map.addActionForKeyStroke(backwardKeyStroke,
								  backwardAction);
		return map;
	}
	private void loadActionTable() {
		Action[] actions = textArea.getActions();

		for(int i=0; i < actions.length; ++i) {
			actionTable.put(actions[i].getValue(Action.NAME),
							actions[i]);
		}
	}
	private Action getAction(String name) {
		return (Action)actionTable.get(name);
	}
	class ControlPanel extends JPanel {
		public ControlPanel() {
			add(cbox);

			cbox.addActionListener(new ActionListener() {
				public void actionPerformed(ActionEvent e) {
					textArea.setKeymap(cbox.isSelected() ?
										newKeymap : 
										originalKeymap);

					textArea.requestFocus();
				}
			});
		}
	}
}

⌨️ 快捷键说明

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