没有Ctrl C,Ctrl V的java createText

时间:2012-09-04 14:34:59

标签: java hotkeys shortcuts

我尝试使用

创建一个文本框
protected FormToolkit toolkit = new FormToolkit(parent.getDisplay());
Text idInput = toolkit.createText(parent, " ", SWT.BORDER);

然后,只有 Ctrl + A ,但没有 Ctrl + C Ctrl + V Ctrl + X < / kbd> function,我该如何获得这些HotKey函数?

1 个答案:

答案 0 :(得分:0)

您可以使用系统剪贴板。这样您就可以从Java应用程序复制并粘贴到本机应用程序了!

创建一个使用ActionListener

的新Clipboard
public class ClipboardActionListener implements ActionListener
{
    private final JTextField;

    public ClipboardActionListener(JTextField text)
    {
        this.text= text;
    }

    @Override
    public void actionPerformed(ActionEvent e)
    {
        Clipboard system = Toolkit.getDefaultToolkit().getSystemClipboard();
        StringSelection selection = new StringSelection(text.getText());
        system.setContents(selection, selection)
    }
}

在创建文本字段时注册击键。

KeyStroke copy = KeyStroke.getKeyStroke(KeyEvent.VK_C, ActionEvent.CTRL_MASK, false);
textField.registerKeyboardAction(new ClipboardActionListener(textField), copy, JComponent.WHEN_FOCUSED);