Bom Dia Pessoal !!
Alguém sabe como desabilitar que um usuário de ctrl + c em um campo JPasswordField ??
Vlw
Bom Dia Pessoal !!
Alguém sabe como desabilitar que um usuário de ctrl + c em um campo JPasswordField ??
Vlw
Tentou usar um KeyListener?
Algo como:
passField.addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
if (e.getKeyChar() == 'c' && "Ctrl".equals(e.getKeyModifiersText()) ) {
e.consume(); // consome o evento para evitar o comportamento padrão
}
}
});
Não testei isso, mas acho que talvez funcione.
segue uns links que acho que podem ajudar
http://www.rgagnon.com/javadetails/java-0644.html
http://download.oracle.com/javase/tutorial/uiswing/misc/keybinding.html
Não testei nada disso ainda, essa madrugada vou dar uma olhada nisso e se conseguir posto aqui
acredito que você queira desabilitar o Ctrl + V pois o Ctrl + C não há necessidade de implementar, mas caso queira implementar uma ação diferente para essa combinação também serve.
JPasswordField passwordField = new JPasswordField(10);
//define uma Action para ser passada como parametro para o getActionMap()
Action acao = new AbstractAction(){
public void actionPerformed(ActionEvent e) {
//aqui vai a ação a ser tomada quando o usuário digitar Ctrl + V
}
};
//adiciona uma entrada para o mapa e especifica uma key com o KeyStroke
passwordField.getInputMap().put(KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK),"Nome da Ação");
//obtem o mapa de acões do componente
passwordField.getActionMap().put("Nome da Ação",acao);
Espero ter ajudado
vlw giroto !!
era isso mesmo. ctrl +v . confundi.