第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java - 用來自另一個類的數(shù)據(jù)填充Jtable

Java - 用來自另一個類的數(shù)據(jù)填充Jtable

藍(lán)山帝景 2022-08-03 16:13:37
所以我在一個類上有一個JTable。table = new JTable();    table.setModel(new DefaultTableModel(        new Object[][] {        },        new String[] {            "Location", "Latitude", "Longitude", "Nitrogen", "Phosphorus", "Potassium", "pH"        }    ));    table.setBounds(35, 120, 507, 349);    contentPane.add(table);}我想使用來自另一個類的數(shù)據(jù)填充表。我有一個用于顯示已處理數(shù)據(jù)的類(應(yīng)用程序是關(guān)于使用張量流處理圖像的),變量為lat,lng,d1,d2,d3,d4,每個變量都包含數(shù)據(jù)。我如何做到這一點(diǎn)?
查看完整描述

2 回答

?
慕娘9325324

TA貢獻(xiàn)1783條經(jīng)驗 獲得超4個贊

您可以在 JTable 實例上調(diào)用 setModel()。

例如,您只需要從其他源傳遞模型即可。喜歡:

setModel(simeOtherObject.generateTableModel());

換句話說:另一個類可以生成一個模型對象。或者,它提供了一些“中性”數(shù)據(jù)(如列表),然后一些幫助程序代碼將其轉(zhuǎn)換為 Model 對象。

老實說,讓多個類以這種方式協(xié)同工作是基本的Java知識。如果這已經(jīng)使您負(fù)擔(dān)過重,那么在嘗試創(chuàng)建復(fù)雜的GUI應(yīng)用程序之前,您應(yīng)該退后一步并學(xué)習(xí)更多基礎(chǔ)知識。


查看完整回答
反對 回復(fù) 2022-08-03
?
慕森卡

TA貢獻(xiàn)1806條經(jīng)驗 獲得超8個贊

有多種方法可以在 中添加/刪除數(shù)據(jù)。下面的程序演示了 和 的用法。JTableaddRow()setModel()


請注意,方法僅在 中存在。因此,當(dāng)您使用其他表模型時,必須使用不同的方法。addRow()DefaultTableModel


import javax.swing.*;

import javax.swing.table.DefaultTableModel;

import java.awt.BorderLayout;

import java.awt.event.*;


public class PopulateTable

{

  public static void main(String[] args)

  {

    JTable table = new JTable();

    table.setModel(new DefaultTableModel(

        new Object[][] {

        },

        new String[] {

            "Location", "Latitude", "Longitude", "Nitrogen", "Phosphorus", "Potassium", "pH"

        }

    ));


    JButton button1 = new JButton("Add First Row");

    button1.addActionListener(new ActionListener()

    {

      @Override

      public void actionPerformed(ActionEvent e)

      {

        ((DefaultTableModel) table.getModel()).addRow(Data.getFirstRow());

      }

    });


    JButton button2 = new JButton("Set All Rows");

    button2.addActionListener(new ActionListener()

    {

      @Override

      public void actionPerformed(ActionEvent e)

      {

        table.setModel(new DefaultTableModel(

            Data.getAllRows(),

            new String[] {

                "Location", "Latitude", "Longitude", "Nitrogen", "Phosphorus", "Potassium", "pH"

            }

        ));

      }

    });


    JPanel buttonPanel = new JPanel();

    buttonPanel.add(button1);

    buttonPanel.add(button2);


    JFrame frame = new JFrame();

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    frame.getContentPane().add(new JScrollPane(table), BorderLayout.CENTER);

    frame.getContentPane().add(buttonPanel, BorderLayout.SOUTH);

    frame.pack();

    frame.setVisible(true);

  }

}


class Data

{

  private static Object[][] rows = new Object[][] {

      {"a1", "b1", "c1", "d1", "e1", "f1", "g1"},

      {"a2", "b2", "c2", "d2", "e2", "f2", "g2"},

      {"a3", "b3", "c3", "d3", "e3", "f3", "g3"},

      {"a4", "b4", "c4", "d4", "e4", "f4", "g4"}

  };


  static Object[][] getAllRows()

  {

    return rows;

  }


  static Object[] getFirstRow()

  {

    return rows[0];

  }

}


查看完整回答
反對 回復(fù) 2022-08-03
  • 2 回答
  • 0 關(guān)注
  • 172 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號