- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试将选项卡 Pane 中的表数据导出到 Excel 文件中,但遇到此异常
javax.swing.JTable$1 cannot be cast to javax.swing.table.DefaultTableModel
尝试像这样转换输出
DefaultReportPanel panel = (DefaultReportPanel) this.tabbedPane.getComponentAt(i);
这是 DefaultReportPanel 的类
public class DefaultReportPanel extends JPanel {
JScrollPane scrollPane;
JTable table;
public DefaultReportPanel(){
setLayout(new BoxLayout(this, BoxLayout.PAGE_AXIS));
this.scrollPane = new JScrollPane();
this.add(scrollPane);
}
public void setTable(String[] headers, Object[][] data){
setLayout(new BoxLayout(this, BoxLayout.PAGE_AXIS));
this.table = new JTable(data, headers);
this.table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
this.scrollPane.setViewportView(this.table);
}
public DefaultTableModel getTableModel(){
return (DefaultTableModel) this.table.getModel();
}
这是我收到异常的方法
public LinkedHashMap<String, DefaultTableModel> getTableModels() {
LinkedHashMap<String, DefaultTableModel> models = new LinkedHashMap<String, DefaultTableModel>();
for(int i = 0; i < this.tabbedPane.getTabCount(); i++){
DefaultReportPanel panel = (DefaultReportPanel) this.tabbedPane.getComponentAt(i);
System.out.println(this.tabbedPane.getTitleAt(i));
if(panel != null)
{
models.put(this.tabbedPane.getTitleAt(i), panel.getTableModel());
}
}
return models;
}
对于缺少什么有什么想法吗?
最佳答案
我认为您对于异常发生位置的假设是不正确的。我认为这发生在这里:
public DefaultTableModel getTableModel(){
return (DefaultTableModel) this.table.getModel();
}
我为什么这么想?这是您要转换为 DefaultTableModel
的唯一位置(您已显示)。创建表时,您使用了 JTable 中的构造函数:
public JTable(final Object[][] rowData, final Object[] columnNames) {...}
它不会创建DefaultTableModel
。它创建了 AbstractTableModel
的即时实现。
编辑:
为了避免 ClassCastException,一些选项是:
答案(2)和(3)需要更改 LinkedHashMap 的类型
关于java - 类转换异常 - tabbedpane.getComponentAt(index),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26004365/
我有一个 tabbedPane,其中包含 2 个 JPanel。 tabbedPane = new JTabbedPane(); tabbedPane.addTab("Main", null, mai
我正在一个名为“仪表板”的类中创建一个选项卡疼痛,该类在选项卡中包含“填充”面板。我想知道是否有办法创建新的仪表板并更改我存储在选项卡中的面板。我不确定这是否是解释它的正确方法,但这里有一些代码。 p
我在循环迭代中收到: Tab 1 Tab 2 在开始的代码中,我有面板、选项卡 Pane 和滚动 Pane : JPanel panel = new JPanel(); JTabbedPane tab
我在一个名为App的类中有一个TabbedPane,我想在这个类中运行一个方法。我添加了两个选项卡,其中一个是 Login 类中的 JPanel,另一个是空选项卡。这是类(class): public
我的 JFrame 没有添加 JTabbedPane,我不知道崩溃是否是我的 Eclipse 的某种错误。没有语法错误或任何我认为错误的东西。其他人可以尝试运行它并看看它是否有效吗?该代码已经准备好运
我试图让我的 JTextArea 显示在 llpPanel 的所有其他内容下。我的代码如下,其中包含我的代码显示内容的屏幕截图。在代码中,您将看到我已将 JTextArea 的尺寸设置为 (50, 5
我正在尝试将选项卡 Pane 中的表数据导出到 Excel 文件中,但遇到此异常 javax.swing.JTable$1 cannot be cast to javax.swing.table.De
我在每个选项卡中添加了一个带有 JPanel 的 JTabbedPane。每个 JPanel 中都有一个 JText 区域。可以在同一模板中动态创建选项卡。 还有一个带有菜单的菜单栏。它有选项来替换出
我有一个带有多个选项卡的 JTabbedPane,每个选项卡都是一个扩展 JPanel 的类,并包含一个布局(例如文本字段和标签)。我一直试图从各种选项卡中获取数据,但我不知道该怎么做。我的目标是“获
嗨! 我想用 jTable 创建一个 TabbedPane。 设计师: JForm 中的构造函数代码: initComponents(); this.add(jTabbedPane1)
如何更改 jfoenix tabbedpane 默认标题颜色? jFoenix TabbedPane Header 只有标签颜色会改变。 Colored Tabs 最佳答案 你可以使用 css 来做到
无法理解为什么在为我的 Java 应用程序应用 setLookAndFeel 时,tabbedPane 丢失了我之前设置的背景。 应用 setLookAndFeel 之前: 应用 setLookAnd
我想将带有文本区域的滚动 Pane 添加到选项卡。我为此编写了代码。但是,它显示了一个小文本区域而不是整个框架。我在 createAction() 方法中编写了此代码。我想要带有关闭按钮的选项卡并添加
经过一番广泛的搜索,我无法弄清楚如何获得下图中红色箭头所指的颜色。我想要获得此颜色值的原因是将 JTabbedPane(蓝色箭头)内的 Pane 背景设置为相同的值,因此两种颜色之间没有区别。在 Wi
我正在尝试创建一个 tabPane 并从我的数据库添加选项卡。但我在设置 tabbedPane 的大小和位置时遇到问题。这是我的代码; JPanel pnlTemp; JTabbedPane tabP
这个方法来自哪里?我试过寻找它,但找不到。我看到它使用的唯一示例是扩展 JPanel 并在构造函数中调用它的地方。问题是我不想扩展 JPanel 那么我该如何去创建一个对象(我的问题是什么类)以便我可
我是 Blackberry 10 开发和整个 qt 信号槽机制的新手。当用户单击我的 Blackberry 10 native 应用程序中的不同选项卡时,我正在尝试注册信号和插槽。我的 UI 有以下代
解决了我的flicker issue之后,我想知道是否有更好的可关闭选项卡式 Pane ,然后通过谷歌搜索 closabletappedpane 弹出顶部的那个。 ?(你可以通过它的 processM
我想自定义 tabbedPane 的颜色以适应我的 gui 主题,但我不知道该怎么做。我已经尝试了很多代码,但仍然没有任何反应。 这是我的... 提前谢谢^_^ 最佳答案 在创建 GUI 之前,您可以
我已经定义了一个 TabbedPane 如下,但每个选项卡一个,我想显示内容“questions.qml”(这是一个导航 Pane )和“stats.qml”文件,而不是将代码嵌入到单个文件中。所以我
我是一名优秀的程序员,十分优秀!