Tag: jtable

使用编辑器validation表的单元格

我的JTable有一个密码字段编辑器。 我想在用户单击编辑另一个字段时,如果文本长度小于8位,则显示错误消息。 我尝试过焦点听众。 但它不起作用。 请帮助我,因为我刚刚开始使用java swing。 class PasswordEditor extends DefaultCellEditor { TextBox m_passWord = new TextBox(); public PasswordEditor() { super(new TextBox()); } @Override public Object getCellEditorValue() { return this.m_passWord.getText(); } @Override public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) { Object fieldValue = value; if(null == fieldValue) fieldValue = Constants.EMPTY_STRING; this.m_passWord.addInputMethodListener(new […]

在JTable的单元格中添加按钮和数据?

可以在JTable单元格中添加按钮和数据吗? 我要做的是创建一个表,其中包含显示数据库中数据(数字)的列,以及两个按钮来增加/减少同一单元格内的数字。 | ID | 产品数量| | 06 | 2 [+] [ – ] | 它会像上面那样用[+] [ – ]作为按钮。 因此,当我按[+]时,如果按[ – ],数字将变为3和1。

JTable中的JProgressBar没有更新

为什么以下代码中的进度条没有更新,如何将它们更新? import java.awt.event.{ActionListener, ActionEvent} import javax.swing.table.{TableCellRenderer, AbstractTableModel} import javax.swing.{Timer, JTable, JProgressBar, JFrame} object TestProgressBar { val frame = new JFrame() val model = new TestModel() val table = new JTable(model) class TestModel extends AbstractTableModel { def getColumnCount = 4 def getRowCount = 4 def getValueAt(y: Int, x: Int) = “%d,%d”.format(x, y) override def setValueAt(value: Any, […]

JTable单元编辑器编号格式

我需要在jTable中显示精确的2位小数。 为此,我创建了一个自定义单元格编辑器: public class NumberCellEditor extends DefaultCellEditor { public NumberCellEditor(){ super(new JFormattedTextField()); } public Component getTableCellEditorComponent(JTable table, Object value, boolean isSelected, int row, int column) { JFormattedTextField editor = (JFormattedTextField) super.getTableCellEditorComponent(table, value, isSelected, row, column); if (value!=null){ DecimalFormat numberFormat = new DecimalFormat(“#,##0.00;(#,##0.00)”); editor.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.NumberFormatter(numberFormat))); Number num = (Number) value; String text = numberFormat.format(num); editor.setHorizontalAlignment(SwingConstants.RIGHT); […]

如何在JTable上执行不区分大小写的filter?

我正在制作一个带有文本字段的表格,您可以在其中输入单词来过滤表格。 它有效,但我想要做的是能够用输入的单词过滤它,但忽略单词的情况。 有没有办法在不创建自定义RowFilter情况下完成此操作? 您可以运行此SCCEE以查看我正在谈论的内容。 我想能够输入usa ,它将过滤USA 。 import java.awt.BorderLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JApplet; import javax.swing.JButton; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; import javax.swing.JTextField; import javax.swing.RowFilter; import javax.swing.table.TableModel; import javax.swing.table.TableRowSorter; public class TestTableSortFilter extends JApplet { private String[] columnNames = {“Country”, “Capital”, “Population in Millions”, “Democracy”}; private Object[][] data = { {“USA”, […]

Java JTable – 只能编辑一列

我想知道如何使JTable的一列可编辑,其他列必须是不可编辑的。 我已经覆盖了isCellEditable()但是这会将每个单元格更改为不可编辑。 Thnx提前。

如何清除jTable的内容?

我有一个jTable,它有一个像这样定义的表模型: javax.swing.table.TableModel dataModel = new javax.swing.table.DefaultTableModel(data, columns); tblCompounds.setModel(dataModel); 有谁知道如何清除其内容? 就这样它返回一个空表?

如何使JTable同时AutoResize和horizo​​ntall可滚动?

我将JTable放入JScrollPane 但是当我设置JTable Auto Resizeable时,它将没有水平滚动条。 如果我设置了AUTO_RESIZE_OFF,那么当列宽不够大时,Jtable将不会填充其容器的宽度。 那我该怎么做呢: 当桌子不够宽时,展开以填充其容器宽度 当表足够宽时,使其可滚动。 谢谢

根据列值更改JTable行的背景颜色

嗨,我是java jtable cellrendered的新手。 我正在寻找一种适用于我的程序的方法,但我找不到运气。 这是我的Jtable Employee ID | Name | Status | Position 00565651 Roger Active Manager 00565652 Gina Active Crew 00565652 Alex Inactive Crew 00565652 Seph Active Manager 数据来自ms访问数据库,但我想更改状态列中值为“非活动”的行的背景/前景。 我在互联网上找到了很多例子,但在我的程序中都不可能。 有人能帮我吗? 这是我的模特 String[] columnNames = {“Employee ID”,”Name”, “Status”, “Position”}; DefaultTableModel model = new DefaultTableModel(columnNames, 0); 这是创建我的表以及如何从数据库中获取数据的方法 public MyList(){//my constructor frame(); loadListFromDB(); } public void […]

从结果集填充表时更改列的jtable类型

我有工作人员从结果集中填写jtable,如下所示; public class WorkerFillTable extends SwingWorker { private DefaultTableModel modeltable; public WorkerFillTable(DefaultTableModel modeltable) { this.modeltable = modeltable; } @Override protected DefaultTableModel doInBackground() throws Exception { ResultSet rs; Statement stmt; String query = “select Name,ID,Status,IsActive from current_conf\n” + “order by Name,ID”; Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”); String connectionUrl = “jdbc:sqlserver://192.168.130.100;” + “databaseName=DBST;” + “user=” + “user1” + “;” + “password=” […]