📄 jkeyboard.java
字号:
package developpez.swing;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JTextField;
import javax.swing.KeyStroke;
/**
* <br>
* -------------------------------- <br>
* Pour le site www.developpez.com <br>
* @author JHelp
* @version 1.0
*/
public class JKeyboard
extends JTextField
implements MouseListener, KeyListener, FocusListener
{
private KeyStroke combinaisonDeTouches;
public JKeyboard()
{
super(10);
this.setEnabled(false);
this.addMouseListener(this);
this.addKeyListener(this);
this.setFocusTraversalKeysEnabled(false);
this.addFocusListener(this);
}
public JKeyboard(KeyStroke combinaisonDeTouches)
{
this();
this.combinaisonDeTouches = combinaisonDeTouches;
this.miseAJour();
}
public KeyStroke getCombinaisonDeTouches()
{
return this.combinaisonDeTouches;
}
public void setCombinaisonDeTouches(KeyStroke combinaisonDeTouches)
{
this.combinaisonDeTouches = combinaisonDeTouches;
this.miseAJour();
}
/**
* @param e
* @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)
*/
public void mouseClicked(MouseEvent e)
{
this.setEnabled(true);
this.requestFocus();
}
/**
* @param e
* @see java.awt.event.MouseListener#mousePressed(java.awt.event.MouseEvent)
*/
public void mousePressed(MouseEvent e)
{
}
/**
* @param e
* @see java.awt.event.MouseListener#mouseReleased(java.awt.event.MouseEvent)
*/
public void mouseReleased(MouseEvent e)
{
}
/**
* @param e
* @see java.awt.event.MouseListener#mouseEntered(java.awt.event.MouseEvent)
*/
public void mouseEntered(MouseEvent e)
{
}
/**
* @param e
* @see java.awt.event.MouseListener#mouseExited(java.awt.event.MouseEvent)
*/
public void mouseExited(MouseEvent e)
{
}
private void miseAJour()
{
if(this.combinaisonDeTouches != null)
{
StringBuffer sb = new StringBuffer(KeyEvent
.getModifiersExText(this.combinaisonDeTouches.getModifiers()));
if(sb.length() > 0)
{
sb.append('+');
}
sb.append(KeyEvent.getKeyText(this.combinaisonDeTouches.getKeyCode()));
this.setText(sb.toString());
}
else
{
this.setText("");
}
}
/**
* @param e
* @see java.awt.event.KeyListener#keyTyped(java.awt.event.KeyEvent)
*/
public void keyTyped(KeyEvent e)
{
}
/**
* @param e
* @see java.awt.event.KeyListener#keyPressed(java.awt.event.KeyEvent)
*/
public void keyPressed(KeyEvent e)
{
this.combinaisonDeTouches = KeyStroke.getKeyStrokeForEvent(e);
int code = e.getKeyCode();
if(code != KeyEvent.VK_SHIFT && code != KeyEvent.VK_CONTROL
&& code != KeyEvent.VK_ALT && code != KeyEvent.VK_ALT_GRAPH)
{
this.miseAJour();
this.setEnabled(false);
}
}
/**
* @param e
* @see java.awt.event.KeyListener#keyReleased(java.awt.event.KeyEvent)
*/
public void keyReleased(KeyEvent e)
{
}
/**
* @param e
* @see java.awt.event.FocusListener#focusGained(java.awt.event.FocusEvent)
*/
public void focusGained(FocusEvent e)
{
}
/**
* @param e
* @see java.awt.event.FocusListener#focusLost(java.awt.event.FocusEvent)
*/
public void focusLost(FocusEvent e)
{
this.miseAJour();
this.setEnabled(false);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -