📄 texttransfertest.java
字号:
/**
* @version 1.10 1999-09-16
* @author Cay Horstmann
*/
import java.io.*;
import java.awt.*;
import java.awt.datatransfer.*;
import java.awt.event.*;
import javax.swing.*;
public class TextTransferTest
{ public static void main(String[] args)
{ JFrame frame = new TextTransferFrame();
frame.show();
}
}
class TextTransferFrame extends JFrame
implements ActionListener
{ public TextTransferFrame()
{ setTitle("TextTransferTest");
setSize(300, 300);
addWindowListener(new WindowAdapter()
{ public void windowClosing(WindowEvent e)
{ System.exit(0);
}
} );
Container contentPane = getContentPane();
textArea = new JTextArea();
contentPane.add(new JScrollPane(textArea), "Center");
JPanel panel = new JPanel();
copyButton = new JButton("Copy");
panel.add(copyButton);
copyButton.addActionListener(this);
pasteButton = new JButton("Paste");
panel.add(pasteButton);
pasteButton.addActionListener(this);
contentPane.add(panel, "South");
sysClipboard
= Toolkit.getDefaultToolkit().getSystemClipboard();
}
public void actionPerformed(ActionEvent event)
{ Object source = event.getSource();
if (source == copyButton) copy();
else if (source == pasteButton) paste();
}
private void copy()
{ String text = textArea.getSelectedText();
if (text.equals("")) text = textArea.getText();
StringSelection selection = new StringSelection(text);
sysClipboard.setContents(selection, null);
}
private void paste()
{ String text;
Transferable contents = sysClipboard.getContents(this);
if (contents == null) return;
try
{ text = (String)(contents.getTransferData
(DataFlavor.stringFlavor));
textArea.replaceSelection(text);
}
catch(Exception e)
{ textArea.append("Error: " + e);
}
}
private JTextArea textArea;
private JButton copyButton;
private JButton pasteButton;
private Clipboard sysClipboard;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -