- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个用于项目 list 的应用程序,我正在尝试将 JTable 添加到代码中的 JFrame 中。我创建了名为 ItemTableModel
的 AbstractTableModel
对象的扩展。我还将一个 JTable 拖放到 netbeans 中相应 JFrame 的设计器 View 上,并将其重命名为 m_jtTable
。
public class ItemTableModel extends AbstractTableModel
{
Inventory inv;
int rowCount = 0;
int colCount = 3;
public ItemTableModel(Inventory in)
{
inv = in;
}
@Override
public int getRowCount()
{
return inv.itemList.size();
}
@Override
public int getColumnCount()
{
return colCount;
}
@Override
public boolean isCellEditable(int row, int col)
{
return false;
}
@Override
public Object getValueAt(int rowIndex, int columnIndex)
{
Item it = inv.itemsList.get(rowIndex);
Object retO = null;
switch(columnIndex)
{
case 0: retO = (Object)it.getItemNumber(); break;
case 1: retO = (Object)it.getDescription(); break;
case 2: retO = (Object)it.getPrice(); break;
default: retO = (Object)new String("null"); break;
}
return retO;
}
}
然后在我的 JFrame 的方法中,加载库存后我有下面的代码
ItemTableModel data = new ITemTableModel(this.inv);
m_jtTable.setModel(data);
我有几个问题,我需要调用什么来绘制表格?我是否需要专门为 netbeans 指定我的表模型?如何指定列名称?如果库存发生变化,我如何重新绘制表格以反射(reflect)这一变化? (我计划搜索库存并在此表中显示可能的结果,方法是将其 Inventory
更改为仅包含搜索匹配项的库存)
此外,我不需要/不想使任何单元格可编辑,该表仅供查看。
最佳答案
what do I need to call to draw the table?
一般来说,没什么。如果表格已添加到可见组件中,设置模型将自动使用模型的内容更新表格
Do I need to specify my table model to netbeans specifically?
虽然您可以在编辑器中“构建”模型,但通常不能。您应该简单地创建模型并将其应用到代码源中的表,但是在调用 initComponent
之后...
How do I specify column names?
有几种方法,但最简单的是覆盖 TableModel#getColumnName
方法并为所请求的索引返回适当的名称
And if something changes in the inventory, how do I redraw the table to reflect this?
这取决于模型的实现方式。您可以重新创建模型并将其重新应用到表中。
更好的解决方案是提供一个 add
方法,允许您将新的库存 Item
添加到表中,然后使用 [AbstractTableModel#fireTableRowsInserted
]( http://docs.oracle.com/javase/7/docs/api/javax/swing/table/AbstractTableModel.html#fireTableRowsInserted(int , int)) 这将导致表自行更新。
如果您想更新现有项目,您可以使用 setValueAt
方法目录,或者提供一些方法来告诉模型给定项目已开始更改,例如itemChanged(Item item)
需要找到 Item
代表的行并触发 [AbstractTableModel#fireTableCellUpdated
]( http://docs.oracle.com/javase/7/docs/api/javax/swing/table/AbstractTableModel.html#fireTableCellUpdated(int , int))
(I plan to search the inventory and display possible results in this table by changing its Inventory to one with just the search matches)
看看How to use tables, Sorting and Filtering
Also, I don't need/want to make any cell editable, this table is just for viewing.
您已经将 isCellEditable
重写为 return
false
,因此应该可以正常工作...
花一些时间阅读 How to use tables了解更多详细信息
关于java - Netbeans,通过拖放 GUI 设计器创建自定义表模型。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18603803/
默认情况下,netbeans 将其设置存储在用户主目录下名为 .netbeans 的目录中。是否可以更改此目录的位置(尤其是在 Windows 下)? 感谢 James Schek,我现在知道了答案(
我每天都在使用 Netbeans IDE,突然我的“项目”和"file"选项卡消失了,我真的不知道该怎么办,我在谷歌上搜索过,但找不到任何合适且有效的解决方案来解决这个问题。 有人能帮助我吗? 如果您
我正在使用 Netbeans 来满足各种开发需求。但是安装大量插件会使 Netbeans 非常慢。是否可以为每个特定的开发需求(如 Eclipse)安装多个 Netbeans? 最佳答案 还有另一种方
只是一个简单的问题,我在哪里可以下载旧版本的 Netbeans? Netbeans 6.9.1 对 Java EE 开发人员来说尤为重要。 我看过他们的网站,但我只能找到 7.0.1 和 7.1 的下
我是新的 NetBeans 用户。当我加载我的项目时,一些文件被淡化了。当我将光标放在它们上时,它们显示为“忽略”。为什么?所有的 JAR 文件和类文件也会被忽略。 最佳答案 检查Tools->Opt
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 3年前关闭。 锁定。这个问题及其答案
任何人都知道是否可以在 netbeans 中搜索和替换所有打开的文件?如果有的话,似乎也找不到选项。 我正在使用 Netbeans 6.9 PHP IDE 最佳答案 CTRL+SHIFT+H 这将打开
是否可以将条目添加到由netbeans生成的jar的manifest.mf文件中? 例如构建一个osgi包。 最佳答案 请注意,您可以通过ant任务即时创建 list ,并动态设置属性。 首先,必须更
我最近开始使用 NetBeans,但缺少一个功能使我无法完全切换到 NetBeans。我一直使用终端,从 NetBeans 窗口切换到终端窗口很痛苦。 有没有办法将终端窗口嵌入到 NetBeans I
在netbeans中调试Java程序时,我希望调试器在导致NullPointerException的行上停止,以便可以在那里检查变量。我相信我必须在该行设置的断点上使用条件,但是条件的语法是什么? 谢
当我在JavaScript中使用PHP时,Netbeans 7.0将行突出显示为语法错误 就我而言 $(document).ready(function(){ $("#rating_comp
默认情况下,netbeans 中所有打开的文件都显示在水平选项卡中,就像浏览器一样。 我希望我的选项卡垂直列出,这可能吗? 最佳答案 工具 -> 选项 -> 外观 -> 选项卡位置 关于netbean
NetBeans 中是否有颜色选择器的快捷方式? 我在 NetBeans 网站上发现了同样的查询,据说这是可能的,但我找不到如何做到这一点的实际答案。 我的意思是:当我在 CSS 文件中编辑涉及颜色的
我刚刚开始使用 NetBeans,并正在尝试了解如何: 保存时删除尾随空格。我知道你可以手动调用它,但如果你忘记了,那就很烦人了。可以在保存时自动完成吗?我希望这样做是因为它可以保持代码整洁,因为当您
我正在开发一个 netbeans 应用程序,它的主要 TopComponent 包含一个渲染 Canvas : 当我关闭应用程序(不是顶级组件)时会生成一个错误,有时这会导致在应用程序关闭后运行一个进
有没有办法在 netbeans 中进行项目范围的搜索和替换?好像应该有,但是没找到相关信息。 谢谢 最佳答案 在编辑菜单下,您应该找到在项目中替换...的菜单项 关于netbeans - 搜索并替换整
如果是,怎么做? 最佳答案 在 Netbeans 6.9 for PHP 中,转到文件->项目属性。 在“类别”中,选择“运行配置”。有很多选项可以让您的整个项目在远程服务器上运行。 关于netbea
首先,我使用的是 NetBeans IDE 7.1(内部版本 201112071828)。 我有这段代码 onload = function() { tooltip.
/* * * This is a long comment. I broke it into lines, but that made it impossible to edit without
我在 netbeans 中有一个项目,其中有一个使用 jflex 生成的 java 扫描器。因此,当我通常使用 make 文件构建它时,我使用 -Xlint 选项,即 javac -Xlint jav
我是一名优秀的程序员,十分优秀!