侦听JFrame的动作

时间:2009-09-05 17:21:32

标签: java swing jframe listener

我正在尝试为JFrame制作的swing gui听tab-in tab-out动作。我有一个JTextField添加到JFrame,只要选择了窗口就会获得用户剪贴板,这样用户可以在程序之间进行选项卡,复制一些URL,这样当回到我的程序时,这个JTextField将由复制的url字符串填充。 / p>

编辑:

我试过这个:

    frame.addFocusListener(
            new FocusListener() {
                public void focusGained(FocusEvent e) {

                url= getClipboardData();
                }

                @Override
                public void focusLost(FocusEvent arg0) {
                    // TODO Auto-generated method stub

                }
            }

    );

它不起作用

3 个答案:

答案 0 :(得分:1)

你想要的是一个FocusListener而不是一个ActionListener。查看java Doc,您将了解如何使用它。这很容易。

答案 1 :(得分:1)

帧不接收焦点事件。帧上的组件获得焦点事件。

如果你想知道帧何时获得焦点,那么使用WindowListener并处理windowActivated事件。

答案 2 :(得分:0)

看起来您没有将剪贴板数据设置到文本字段中。

frame.addFocusListener(new FocusListener() {
    public void focusGained(FocusEvent e) {
        getJTextField().setText(getClipboardData());
    }
    public void focusLost(FocusEvent e) {
        //ignored
    }
});

这样的事情可能会解决你的问题