Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 表模型设置值_Java_Tablemodel_Setvalue - Fatal编程技术网

Java 表模型设置值

Java 表模型设置值,java,tablemodel,setvalue,Java,Tablemodel,Setvalue,您好,我的AbstractTableModel有问题。。。我想指定setValueAt,我有一个LocalDate和一个布尔大小写,但我不知道如何在setValueAt方法中指定它。。。有什么建议吗 AbstractTableModel代码: package de.hsbhv.mediapartner.app.model; import java.time.format.DateTimeFormatter; import java.util.ArrayList; import javax.sw

您好,我的AbstractTableModel有问题。。。我想指定setValueAt,我有一个LocalDate和一个布尔大小写,但我不知道如何在setValueAt方法中指定它。。。有什么建议吗

AbstractTableModel代码:

package de.hsbhv.mediapartner.app.model;

import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import javax.swing.table.AbstractTableModel;
import de.hsbhv.mediapartner.app.data.Bestellungen;

public class BestellungTModel extends AbstractTableModel{

private ArrayList<Bestellungen> bliste = Bestellungen.getBestellListe();

String [] columnNames = { "Bestellnummer",
                          "Kundennummer",
                          "Name",
                          "Artikel",
                          "Bestelldatum",
                          "Summe",
                          "Status"};

public int getRowCount() {
    // TODO Auto-generated method stub
    return Bestellungen.getBestellListe().size();
}

@Override
public int getColumnCount() {
    // TODO Auto-generated method stub
    return this.columnNames.length;
}

@Override
public String getColumnName(int col) {
    return this.columnNames[col];
}

@Override
public Object getValueAt(int row, int col) {
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("dd.MM.yyyy");
    switch(col) {
    case 0 : return bliste.get(row).getBestellnummer();
    case 1 : return bliste.get(row).getKundennummer();
    case 2 : return bliste.get(row).getName();
    case 3 : return bliste.get(row).getArtikel();
    case 4 : return bliste.get(row).getBestelldatum().format(formatter);
    case 5 : return bliste.get(row).getSumme();
    case 6 : if (bliste.get(row).isStorniert()) return "Storniert";else return "Freigegeben";
}
return null;
}
@Override
public void setValueAt(Object aValue, int row, int col) {
    Bestellungen bestellungen = bliste.get(row);
    switch (col) {
    case 0 : bestellungen.setBestellnummer(aValue.toString());
    case 1 : bestellungen.setKundennummer(aValue.toString());
    case 2 : bestellungen.setName(aValue.toString());
    case 3 : bestellungen.setArtikel(aValue.toString());
    case 4 : bestellungen.setBestelldatum(LocalDate);
    case 5 : bestellungen.setSumme(aValue.toString());
    case 6 : bestellungen.setStorniert(boolean);
    }

    fireTableCellUpdated(row, col);
}
public void entfernen(int selectedRow) {
    bliste.remove(selectedRow);     
}

}

最后,我只想用一个按钮将布尔值大小写(AbstractTableModel中的大小写6)更改为true或false。

欢迎使用StackOverflow。你需要提供一些额外的信息,否则我们无法真正帮助你。例如,当前显示的方法没有编译(缺少
}
)。此外,在谈论
tablemodel
时,您指的是哪个类?给我们一些背景:)我希望这能给你提供所需的信息:D我想你会注意到我是java的绝对初学者……欢迎来到StackOverflow。你需要提供一些额外的信息,否则我们无法真正帮助你。例如,当前显示的方法没有编译(缺少
}
)。此外,在谈论
tablemodel
时,您指的是哪个类?给我们一些背景:)我希望这会给你所需要的信息:D我想你会注意到我是java的绝对初学者。。。。
package de.hsbhv.mediapartner.app.ui;

import java.awt.Color;
import java.awt.Font;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.SwingConstants;

import de.hsbhv.mediapartner.app.data.Bestellungen;
import de.hsbhv.mediapartner.app.model.BestellungTModel;

public class BestellungenPanel extends JPanel {

private StartPanel hf;
private final StartPanel frame;
private JTable tblBestellung;
private BestellungTModel tmBestellung;

public BestellungenPanel(StartPanel parent) {
    frame = parent;
    setLayout(null);
    hf = frame;

    JLabel lblMediapartner = new JLabel("MediaPartner");
    lblMediapartner.setForeground(Color.BLUE);
    lblMediapartner.setFont(new Font("Roboto", Font.BOLD, 16));
    lblMediapartner.setBounds(12, 13, 157, 16);
    add(lblMediapartner);

    JSeparator separator = new JSeparator();
    separator.setBounds(118, 22, 465, 2);
    add(separator);

    JLabel lblBestellungen = new JLabel("Bestellungen");
    lblBestellungen.setFont(new Font("Roboto", Font.BOLD, 16));
    lblBestellungen.setForeground(Color.BLUE);
    lblBestellungen.setBounds(591, 13, 97, 17);
    add(lblBestellungen);

    JLabel lblStatus = new JLabel(" ");
    lblStatus.setBounds(239, 243, 56, 16);
    lblStatus.setVisible(false);
    add(lblStatus);

/*Bedienelemente*/
    JScrollPane spArtikel = new JScrollPane();
    spArtikel.setBounds(12, 37, 676, 222);
    add(spArtikel);

    tmBestellung = new BestellungTModel();
    tblBestellung = new JTable(tmBestellung);
    spArtikel.setViewportView(tblBestellung);

    JButton btnstornieren = new JButton("Stornieren");
    btnstornieren.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {

        }
    });
    btnstornieren.setFont(new Font("Roboto", Font.PLAIN, 13));
    btnstornieren.setBounds(243, 272, 216, 25);
    add(btnstornieren);

    JButton btnZurck = new JButton("zur\u00FCck");
    btnZurck.setFont(new Font("Roboto", Font.PLAIN, 13));
    btnZurck.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            hf.getCl().show(hf.getCardPanel(), "Admin");
        }
    });
    btnZurck.setBounds(12, 272, 216, 25);
    add(btnZurck);

    JButton btnfreigeben = new JButton("Freigeben");
    btnfreigeben.setFont(new Font("Roboto", Font.PLAIN, 13));
    btnfreigeben.setBounds(472, 272, 216, 25);
    add(btnfreigeben);

}
}