Java GUI 使用 Vector 类 建立表格

    xiaoxiao2021-04-18  82

    区别:之前是直接 String column = {"姓名","年龄","性别"};---表头 String content = {{"张三","58","男"},{"李四","56","男"},{"王五","12","女"}};---内容 JTable jtable = new JTable(content ,column  ); 之后是: 将每个人的每个属性存到Vector的数组中,将数组放到表格中,(将表格放到 JScrollPane中),将JScrollPane放到内容窗格上。 PS:不能直接将表格放到内容窗格上,因为无法显示表头(原因:我不知道) 代码------------------------------------------------------------------ package com.software.GUI; import java.awt.BorderLayout; import java.util.Vector; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTable; class Person { private String name; private int age; private String sex; public Person (String name,int age,String sex) { this.name = name; this.age = age; this.sex = sex; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } } class Jframe { private JFrame jFrame; private JPanel jPanel; private JTable jTable; private JScrollPane jScrollPane; public void name() { jFrame = new JFrame("好难啊"); jPanel = new JPanel(new BorderLayout()); Person person1 = new Person("张三", 18, "男"); Person person2 = new Person("李四", 16, "女"); Person person3 = new Person("王五", 18, "男"); Vector row1 = new Vector(); row1.add(person1.getName()); row1.add(person1.getAge()); row1.add(person1.getSex()); Vector row2 = new Vector(); row2.add(person2.getName()); row2.add(person2.getAge()); row2.add(person2.getSex()); Vector row3 = new Vector(); row3.add(person3.getName()); row3.add(person3.getAge()); row3.add(person3.getSex()); Vector content = new Vector(); Vector column = new Vector(); content.add(row1); content.add(row2); content.add(row3); column.add("姓名"); column.add("年龄"); column.add("性别"); jTable = new JTable(content,column); jScrollPane = new JScrollPane(jTable); jPanel.add(jScrollPane,BorderLayout.CENTER); jFrame.setVisible(true); jFrame.setSize(300,200); jFrame.setContentPane(jPanel); jFrame.setLocationRelativeTo(null); jFrame.setAlwaysOnTop(true); } } public final class TableVector { public static void main(String[] args) { new Jframe().name(); } } 截图-----------------------------------------------------------------------
    转载请注明原文地址: https://ju.6miu.com/read-675254.html

    最新回复(0)