Sat, 26 Jan 2013 15:48:59 +0100
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 | } |