Tag: jtable

Java JTable获取所选行的数据

是否有任何方法用于获取所选行的数据 ? 我只想简单地点击包含数据的特定行,然后单击一个按钮,该按钮将在控制台中打印数据。

在使用netbeans时向JTable添加数据

如何在使用netbeans时向JTable添加数据。 Netbeans在它的后代码中是这样的: jTable1 = new javax.swing.JTable(); jTable1.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, null}, {null, null}, {null, null}, {null, null} }, new String [] { “Name”, “Branch” } ) { boolean[] canEdit = new boolean [] { false, false }; public boolean isCellEditable(int rowIndex, int columnIndex) { return canEdit [columnIndex]; } }); // THIS IS […]

找到已调用弹出菜单的JTable行

我有一个JTable和一个特定于每一行的弹出菜单。 我想计算用户右键单击鼠标(Windows L&F)以显示弹出菜单的行。 我为表创建一个MouseListener,因此它在单击时获取MouseEvent,并在正确的位置显示弹出菜单。 但是当用户从弹出菜单中选择一个项目时,我无法确定一种方法来确定用户在第一个位置右键单击的行。 弹出菜单调用的事件不再具有右键单击发生的x,y坐标。 我已经看过获取弹出窗口的位置,但这属于框架,而不是表格,所以它和它的父母都没有正确的x,y值。 我通过inheritanceJPopupMenu并设置我想要它在MouseListener中的x和y值来解决它。 但在我看来,对于想要在JTable上放置弹出菜单的人来说,这将是一个普遍的问题,我想知道我错过了什么。 有没有更简单的方法来做到这一点,尤其是不涉及子类化JPopupMenu的方法?

如何更改JTable的标题背景颜色?

我试过了: table.getTableHeader().setBackground(Color.BLACK); 不起作用。 编辑:此代码仅在我的项目中不起作用。 适用于其他项目。 我可能已经更改了一个可以阻止颜色变化的属性。 或者NetBeans有一些保留默认颜色的属性。 我注意到了别的什么。 我项目中标题的颜色以不同的方式闪耀。 在颜色变化有效的示例中,我看到了不同的图形。 编辑2:别的。 我注意到按钮也不会改变颜色。 必须是通用的东西。 希望这可以帮助。 不幸的是,SSCCE在这种情况下不起作用,因为我无法重现问题。 我肯定使用正确的组件名称。

在java中设置JTable中行的高度

我一直在寻找能够增加JTable中行的高度的解决方案。 我一直在使用setRowHeight(int int)方法编译并运行OK,但没有增加row [s]。 当我使用行的getRowHeight(int)方法设置高度时,它会打印出我将行增加到的大小,所以我不确定是什么问题。 下面的代码粗略说明了我是如何解决它的。 我的类扩展了JFrame。 String[] columnNames = {“Column 1”, “Column 2”, “Column 1 3″}; JTable table = new JTable(new DefaultTableModel(columnNames, people.size())); DefaultTableModel model = (DefaultTableModel) table.getModel(); int count =1; for(Person p: people) { model.insertRow(count,(new Object[]{count, p.getName(), p.getAge()+””, p.getNationality})); count++; } table.setRowHeight(1, 15);//Try set height to 15 (I’ve tried higher) 谁能告诉我哪里出错了? 我想将第1行的高度增加到15像素?

JAVA中的SELECT语句

public void search() throws Exception{ Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”); String url = “jdbc:odbc:******”; String user = “*****”; String pass = “*****”; Connection con = DriverManager.getConnection(url, user, pass); Statement state = con.createStatement(); ResultSet rs = state.executeQuery(“”); ResultSetMetaData rsmetadata = rs.getMetaData(); int columns = rsmetadata.getColumnCount(); DefaultTableModel dtm = new DefaultTableModel(); Vector column_name = new Vector(); Vector data_rows = new Vector(); […]

JTable动态改变行高

我无法动态更改我的行的高度,是否有一个我需要重载的方法? – 编辑 – 对不起,这是我的第一篇短信….我的问题与改变行高有关,取决于内容。 所以到目前为止我所做的是一个实现TabelCellRenderer的内部类。 这就是我正在进行的行高计算。 private static class TextAreaRenderer extends JTextPane implements TableCellRenderer { public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { /* Setup Code here */ this.setText(((String)value).getEntityName()); int height = new Double(this.getPreferredSize().getHeight()).intValue(); if (table.getRowHeight(row) < height) table.setRowHeight(row, height); /* some more code */ return this; […]

确定单击哪个JTable单元

当用户单击JTable上的单元格时,如何计算单击单元格的行和列? 我如何在JLabel显示此信息?

正确地从(已排序的)JTable获取数据

我已经开发了一个基本的自定义JTableModel,如下所示 public class CustomTableModel extends DefaultTableModel { List data; public CustomTableModel(List data) { this.data = data; } public Class getColumnClass(int columnIndex) { return MyClass.class; } public MyClass getValueAt(int rowIndex, int columnIndex) { return data.get(rowIndex); } // … } 然后我使用基本的自定义JTableCellRenderer,如下所示 public class CustomTableCellRenderer extends JLabel implements TableCellRenderer { public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, […]

在JTable列中设置右对齐

我正在为计费工具创建一个应用程序。 我想要使​​用右对齐显示金额列。 如何为JTable列设置正确的对齐方式?