Tag: jtextfield

值将侦听器更改为JTextField

我希望消息框在用户更改文本字段中的值后立即出现。 目前,我需要点击回车键才能popup消息框。 我的代码有什么问题吗? textField.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { if (Integer.parseInt(textField.getText())<=0){ JOptionPane.showMessageDialog(null, "Error: Please enter number bigger than 0", "Error Message", JOptionPane.ERROR_MESSAGE); } } } 任何帮助将不胜感激!

有没有办法只接受一个JTextField中的数值?

有没有办法只接受一个JTextField数值? 有没有特别的方法呢?

是否有可能使用jtextfield和Jlist自动完成?

我想在java中创建一个自动完成的程序,当用户在JTextfield键入一个字符/字符串时,应该立即提供一个建议列表。 问题是我很困惑如何做到这一点。 有人可以提供一个想法或样本上述问题?

限制JTextField输入整数

我知道这个问题一定要问及答复一百万次,但我找不到一个简单的解决办法。 我有一个JTextField是只接受正整数作为输入。 我需要一种方法来确保没有其他东西在这里输入。 我已经有一个keyListener附加到此控件。 删除这个监听器在那里处理的其他代码,我有这样的: txtAnswer.addKeyListener(new KeyAdapter() { @Override public void keyPressed(KeyEvent e) { int key = e.getKeyCode(); /* Restrict input to only integers */ if (key < 96 && key > 105) e.setKeyChar(''); }; }); 正如你所看到的,我试图使用KeyCode来检查刚刚按下的键是否在整数范围内。 这似乎工作。 但是我想要做的就是只要不在这个范围之内就忽视这个条目。 代码e.setKeyChar('')是为了处理这个问题,但它不起作用。 代码将被编译,但是没有可见的效果。 有人可以告诉我,如果我在正确的轨道上? 我可以用e.setKeyChar('')替换这个工作吗? 还是我完全走错了方向? 谢谢。

JFormattedTextField未正确清除

我正在做这个任务,制作一个解决数独的程序。 我有一个SudokuTextBox的网格面板扩展JFormattedTextField。 我有一个MaskFormatter,所以它只接受一个整数每个文本框。 然后在我的面板中,我有这个代码,当一个关键是相关的。 public void keyReleased(KeyEvent e) { SudokuTextBox tb = (SudokuTextBox) e.getSource(); int row = tb.getRow(); int col = tb.getCol(); int value = toInteger(tb.getText()); //System.out.println(value); if(sudoku.isValid(row, col, value)) { sudoku.set(row, col, value); } else { sudoku.set(row, col, 0); tb.setText(null); } tb.setCaretPosition(0); sudoku.print(); } 事情是,如果我把一个有效的值在一个文本框中,然后我回去并输入一个无效的值(由数独规则)文本框被清除。 但是,当我向前看,前面的有效值显示在文本框中。 包含所有已输入数字的我的sudokumatrix会清除值,因此它只在相应的文本框中显示。 当我将“SudokuTextBox扩展JFormattedTextField”改为“SudokuTextBox扩展JTextField”时,使事情变得更加混乱,就像一个魅力。 但我不能设置JTextField的大小,以便它是正方形,我不能强制每个文本框只有一个整数。 我错过了一些非常明显的东西吗