草庐IT

java - 带有标题行和列的 JTable

如何让JTable的列和行都有标题?像这样:+------+------+------+------+|/\/\/\|col1|col2|col3|+------+------+------+------+|row1||||+------+------+------+------+|row2||||+------+------+------+------+|row3||||+------+------+------+------+谢谢 最佳答案 我想你在搜索RowTableimportjava.awt.*;importjava.aw

java - Swing JTable - 以与选定行的其余部分不同的颜色突出显示选定的单元格?

我有一个基本的swingJTable,要求是当单击任何单元格时,整行都应该突出显示,而且被单击的单元格的颜色应该与突出显示的行的其余部分不同。目前,我将isRowSelectionAllowed设置为true我尝试使用如下所示的自定义TableCellRenderer:publicclassCustomTableCellRendererextendsDefaultTableCellRenderer{publicstaticfinalDefaultTableCellRendererDEFAULT_RENDERER=newDefaultTableCellRenderer();@Overri

java - 如何在 JTable 中控制字体样式、颜色和大小?

我在JavaSwing中有一个JTable。我需要设置字体大小、颜色和样式。我如何在JTable中实现它? 最佳答案 为什么在JTable中将TableRenderer设置为基本设置,更多-->JTable#setWhatever编辑(移除镇流器)代码:importjava.awt.*;importjavax.swing.*;importjavax.swing.table.DefaultTableModel;publicclassTableExample{publicTableExample(){Object[][]data1=ne

java - 无法将列宽设置为零,即无法使列不可见

我试图从JTable中创建一列,通过将宽度设置为零来隐藏它,但它不会发生,并且它对宽度=15仍然可见。这是代码-publicvoidrestoreColumnWithWidth(intcolumn,intwidth){try{TableColumntableColumn=table.getColumnModel().getColumn(column);table.getTableHeader().setResizingColumn(tableColumn);tableColumn.setWidth(width);tableColumn.setMaxWidth(width);tableC

java - 根据数据类型具有不同类型单元格的 Jtable

如何根据特定行显示的输入类型使用不同类型的单元格编辑器实现JTable?例如一些行可以是复选框(对于boolean类型)一些行可以是组合框(如果我想提供一组固定的选项供您选择)一些行可以是文本字段(如果我允许任意数据)。目前我已经实现了AbstractTableModel,它从我的对象中获取一组自定义字段对象并将行添加到表中。我想通过设置特定类型的单元格来进一步自定义我的表格。我可以根据该行包含的字段类型来确定要使用的单元格类型。表模型是在运行时动态创建的。 最佳答案 somerowscouldbecheckboxes(forboo

Java - Swing - JTable - 为选定行设置颜色,但不为单元格设置颜色

我试图让我的表格在您单击一个单元格时选择整行(这可以通过关闭列选择来完成),但是,我不希望您单击的特定单元格周围有额外的粗边框被突出显示。我希望这会很容易,但显然它涉及渲染器,所以我做了很多研究,我能得到的最接近的是:JTablecontactTable=newJTable(tableModel);contactTable.setCellSelectionEnabled(true);contactTable.setColumnSelectionAllowed(false);contactTable.setRowSelectionAllowed(false);contactTable.s

java - JTable 单元格更新不起作用

在我的应用程序中,我使用了一个类似于this的java表例子。我的问题是当我更改单元格的值时(即使在上面的示例中)数据模型在我单击其他单元格之前不会更新。即使我在更改单元格值后单击表格下方的灰色区域,模型也不会更改。我认为原因是在我点击不同的单元格之前,单元格一直保持专注。我怎样才能避免这种情况并在不单击表格单元格的情况下更新模型。提前致谢我已经编辑了上面的示例代码以反射(reflect)问题publicclassJTableDemoextendsJApplet{privateJTextAreatxt=newJTextArea(4,20);//TheTableModelcontrols

java - 如何在 JTable 中动态设置 RowHeight

我想在JTable中放置一个比给定的单元格宽度更长的字符串。如何动态设置rowHeight以便读取整个字符串?这是一个例子:importjavax.swing.*;publicclassExampleTable{publicJPanelcreateTable(){JPaneltotalGUI=newJPanel();//definetitlesfortableString[]title={"TITLE1","TITLE2","TITLE3"};//tabledataObject[][]playerdata={{newInteger(34),"Steve","testtesttest"}

java - 在 JTable 中隐藏一列

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:HowtomakeacolumnsinJTableInvisibleforSwingJavaHowtohideaparticlarcolumninDefaultTableModelfromdisplayingitintable?我想在JTable的三列中输入数据,但我只想显示两列。实际上,我想隐藏第三列,不是通过将宽度设置为0,而是通过任何其他方法,我可以通过单击事件从隐藏列中获取数据。如何以这种方式隐藏列?我正在使用以下代码:try{StringTitle[]=newString{"a","b","c"};

java - 使用 TAB 将焦点更改为 JTable 中的下一个组件

JTable的默认行为是将焦点更改到下一个单元格,我想强制它在按下TAB键时将焦点移动到下一个组件(例如JTextField)。我覆盖了DefaultTableModel的isCellEditable方法以始终返回false:publicbooleanisCellEditable(introwIndex,intcolumnIndex){returnfalse;}但它仍然不会将焦点转移到下一个组件!我应该如何使JTable将焦点更改为下一个组件而不是下一个单元格? 最佳答案 Shift-/Tab键默认用于在组件之间转移焦点。JTabl