Java 如何在JPasswordField中启用剪切、复制?

Java 如何在JPasswordField中启用剪切、复制?,java,swing,jpasswordfield,Java,Swing,Jpasswordfield,我注意到我无法在JPasswordField中剪切和复制?现在,如何将密码的选定部分复制/剪切到剪贴板?有什么方法可以做到这一点吗?简单,使用这个方法 JPasswordField jt=new JPasswordField(20); // Put client property jt.putClientProperty("JPasswordField.cutCopyAllowed",true); add(jt); 默

我注意到我无法在
JPasswordField
中剪切和复制?现在,如何将密码的选定部分复制/剪切到剪贴板?有什么方法可以做到这一点吗?

简单,使用这个方法

JPasswordField jt=new JPasswordField(20);

            // Put client property
            jt.putClientProperty("JPasswordField.cutCopyAllowed",true);

            add(jt);
默认情况下,不允许剪切/复制
JPasswordField
中的密码。您所需要做的就是启用它们

根据关于禁用粘贴的评论,我没有找到属性,但我已经实现了使用它(我不推荐这种方式)

另一种方法是在声明时重写
粘贴()
(我建议使用这种方法)

JPasswordField jt=new JPasswordField(20){
  public void paste(){}
};
更新:我误解了评论。但上述情况并不存在。但是,要禁用任何一个复制/剪切/粘贴,最好覆盖要禁用的所需方法,而不在其中实现


如果有更好的方法,我很想听听。

@nachokk很有趣。有没有一种方法可以允许粘贴但禁用JPasswordField中的内容?不同意,这在以前是不正确的Java7@mKorbel什么是不正确的?在Javas6中(在我发表评论之前已经尝试过),我可以从MsWord等复制密码,太懒了,无法在Java7中测试
JPasswordField jt=new JPasswordField(20){
  public void paste(){}
};