Michael Weiss
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Java</language>
<code id="4d5fc8de8c1c0" hidden>
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.font.*;
public class Tastatur
{
JFrame hatJFrame;
ZeichenJPanel hatZeichenJPanel;
String zKeyText = " ";
MyKeyListener hatMyKeyListener;
public Tastatur()
{
hatJFrame = new JFrame("Tastaturcode");
hatJFrame.setBounds(100,100,400,200);
hatZeichenJPanel = new ZeichenJPanel();
hatJFrame.add(hatZeichenJPanel);
hatMyKeyListener = new MyKeyListener();
hatJFrame.addKeyListener(hatMyKeyListener);
hatJFrame.setResizable(false);
hatJFrame.setVisible(true);
}
/*
private class MyKeyListener implements KeyListener {
public void keyPressed(KeyEvent evt) {
zKeyText = evt.getKeyText(evt.getKeyCode());
hatZeichenJPanel.repaint();
}
public void keyReleased(KeyEvent evt) {}
public void keyTyped(KeyEvent evt) {}
}
*/
</code>
<code id="4d5fc8de8c223">
private class MyKeyListener extends KeyAdapter {
public void keyPressed(KeyEvent evt) {
zKeyText = evt.getKeyText(evt.getKeyCode());
hatZeichenJPanel.repaint();
}
}
</code>
<code id="4d5fc8de8c27d" hidden>
private class ZeichenJPanel extends JPanel {
Rectangle2D.Float r;
Font f = new Font("Arial", Font.PLAIN, 30);
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.black);
g.setFont(f);
r = (Rectangle2D.Float)((new TextLayout(zKeyText,f,((Graphics2D)g).getFontRenderContext())).getBounds());
g.drawString(zKeyText,(int)((this.getWidth()-r.getWidth())/2),(int)((this.getHeight()+r.getHeight())/2));
}
}
static public void main(String[] args)
{
new Tastatur();
}
}
</code>
<run id="4d5fc910dcafd"></run>