src/de/uapcore/sudoku/SudokuTextField.java

Sat, 26 Jan 2013 15:48:59 +0100

author
Mike Becker <universe@uap-core.de>
date
Sat, 26 Jan 2013 15:48:59 +0100
changeset 1
f1d7de36b01e
child 2
5179eff8a9b6
permissions
-rw-r--r--

init project + editable sudoku field

universe@1 1 package de.uapcore.sudoku;
universe@1 2
universe@1 3 import java.awt.Color;
universe@1 4 import java.awt.Dimension;
universe@1 5 import java.awt.Font;
universe@1 6 import java.awt.event.FocusAdapter;
universe@1 7 import java.awt.event.FocusEvent;
universe@1 8 import java.awt.event.KeyAdapter;
universe@1 9 import java.awt.event.KeyEvent;
universe@1 10 import javax.swing.JTextField;
universe@1 11
universe@1 12 /**
universe@1 13 *
universe@1 14 * @author mike
universe@1 15 */
universe@1 16 public class SudokuTextField extends JTextField {
universe@1 17
universe@1 18 public SudokuTextField() {
universe@1 19 setBorder(null);
universe@1 20 setBackground(Color.WHITE);
universe@1 21
universe@1 22 setFont(new Font("Dialog", Font.PLAIN, 18));
universe@1 23 setHorizontalAlignment(JTextField.CENTER);
universe@1 24
universe@1 25 Dimension dim = new Dimension(40,40);
universe@1 26 setPreferredSize(dim);
universe@1 27 setMinimumSize(dim);
universe@1 28 setMaximumSize(dim);
universe@1 29
universe@1 30 addKeyListener(new KeyAdapter() {
universe@1 31 private void handle(KeyEvent e) {
universe@1 32 if (getText().length() > 0) {
universe@1 33 int c = e.getKeyCode();
universe@1 34 if (c != KeyEvent.VK_DELETE &&
universe@1 35 c != KeyEvent.VK_BACK_SPACE &&
universe@1 36 !e.isActionKey()) {
universe@1 37 e.consume();
universe@1 38 }
universe@1 39 } else {
universe@1 40 char c = e.getKeyChar();
universe@1 41 if (c < '0' || c > '9') {
universe@1 42 e.consume();
universe@1 43 }
universe@1 44 }
universe@1 45 }
universe@1 46
universe@1 47 @Override
universe@1 48 public void keyPressed(KeyEvent e) {
universe@1 49 handle(e);
universe@1 50 }
universe@1 51
universe@1 52 @Override
universe@1 53 public void keyTyped(KeyEvent e) {
universe@1 54 handle(e);
universe@1 55 }
universe@1 56
universe@1 57 @Override
universe@1 58 public void keyReleased(KeyEvent e) {
universe@1 59 handle(e);
universe@1 60 }
universe@1 61
universe@1 62 });
universe@1 63 addFocusListener(new FocusAdapter() {
universe@1 64 @Override
universe@1 65 public void focusGained(FocusEvent e) {
universe@1 66 selectAll();
universe@1 67 }
universe@1 68 });
universe@1 69 }
universe@1 70
universe@1 71 }

mercurial