当前位置: 首页 > 知识库问答 >
问题:

无法填充用IntelliJ GUI设计器创建的JTable组件

裴成文
2023-03-14

我有一个在IntelliJ的GUI设计器中制作的JTable组件。该类绑定到GUI窗体,编译没有问题,但表保持空状态。我也尝试使用一些其他代码,但我对java有点陌生,非常想知道答案。请不要给我半个答案或指给我一页去想它。我来这里是因为我试过了。

package com.company;

import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;

/**
 * Created by User on 3/8/2016.
 */
public class TableGUI {
    private static JFrame frame;
    private JTable table1;
    private JPanel panel1;

    public TableGUI() {
        DefaultTableModel model = new DefaultTableModel();

        table1.setAutoCreateRowSorter(true);
        table1.setFillsViewportHeight(true);
        table1.setPreferredScrollableViewportSize(new Dimension(550, 200));
        model.addColumn("Id");
        model.addColumn("First Name");
        model.addColumn("Last Name");
        model.addColumn("Company Name");
        table1.setModel(model);
    }

    public static void main(String[] args) {
        frame = new JFrame("TableGUI");
        frame.setContentPane(new TableGUI().panel1);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.pack();
        frame.setVisible(true);
        frame.setSize(new Dimension(600, 400));
    }
}

共有1个答案

沈子实
2023-03-14

我想通了,答案是我缺少一个JScrollPane。我不得不通过IntelliJ设计器放入一个名为JScrollPane的组件,并将JTable放入其中。这样就可以在JTable上显示列名。

 类似资料:
  • 问题内容: 我想将读取Lucene索引的结果存储到jTable中,以便可以按不同的列对其进行排序。我从索引中读取具有不同频率度量的术语。 表列是这些:[字符串项] [int absFrequency] [int docFrequency] [double invFrequency] 所以我在AbstractTableModel中可以定义列名,但是我不知道如何使用以下方法的结果获取Object []

  • 我在NetBeans IDE中工作,语言是Java,主要的类是JFrame Form。 我需要从Jtable获取所有数据并用这些数据填充数组。数组代表矩阵。 代码如下 我有一个错误 线程“AWT-EventQueue-0”java.lang.ClassCastException:java.lang.String无法转换为java.lang.Double 所以将表中的元素设置为双精度不是那么容易吗?

  • 拥有编程语言数组,如:nbsp; 我还有一个用户列表,比如: ; 有没有一种很好的方法用用户的ID填充由语言名称命名的数组? 类似: ;

  • 问题内容: 我有一个带有表,组合框的框架,我想通过组合框用数据库中的数据填充表,但是如果我与itemlistener一起使用,我不会看到没有itemlistener的表,然后我会看到包含数据的表(combob = combobox) 问题答案: 您有几个问题: 您使用不正确。您的代码可能可以运行(我不确定),但是它没有利用的功能。 从ResultSet读取数据的代码没有意义,因为您甚至根本没有从R

  • 问题内容: 我想在运行时用许多行填充JTable(说10000)。但是我所有的尝试都非常糟糕且效率低下。 起点是获取代表一行的对象列表的方法。我试图通过SwingWorker填写表格,但这对我来说仅适用于小数据。 另一个尝试是直接设置数据而不使用任何类型的线程,但这也非常慢,至少UI不会像SwingWorker那样被阻塞。 那么,您如何做到这一点呢?该表应逐行或逐块填充,但不能全部由一个填充,同时

  • 问题内容: 如何用对象类型的列表中的值填充JTable。我的代码如下所示: 我已经有了列,列表将来自schedule变量?考虑这些列,如何将其放到表中? 问题答案: 看一下DefaultTableModel。您可以遍历List并为每一行创建Object数组。