Liebe Mitglieder,
Ich hab das problem, dass mein Default Table innerhalb meiner Scrollpane nicht angezeigt wird.
Danke im voraus für jede Hilfe.
Ich hab das problem, dass mein Default Table innerhalb meiner Scrollpane nicht angezeigt wird.
Danke im voraus für jede Hilfe.
Code:
package firstTry;
import javax.swing.*;
import javax.swing.table.DefaultTableCellRenderer;
import javax.swing.table.DefaultTableModel;
import firstTry.MyButtonView.tblCalendarRenderer;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.GregorianCalendar;
public class EntryView extends JFrame {
private static final long serialVersionUID=1L;
static int day;
static int nod;
static int year;
static int month;
static int entrynmb;
static int i;
static String infor;
static Entry[] entries = new Entry[1000];
public EntryView(){
JFrame frame = new JFrame();
Container pane = frame.getContentPane();
JTextField Day = new JTextField(25);
JTextField Month = new JTextField(25);
JTextField Year = new JTextField(25);
JTextField info = new JTextField(80);
JButton enter = new JButton("Enter");
DefaultTableModel table = new DefaultTableModel(){public boolean isCellEditable(int rowIndex, int mColIndex){return false;}};
JPanel panel = new JPanel(null);
JLabel Tag = new JLabel("Tag");
JLabel Monat = new JLabel("Monat");
JLabel Jahr = new JLabel("Jahr");
JTable tableE = new JTable();
JScrollPane Entrys = new JScrollPane(tableE);
i=0;
String[] columnNames = {"Tag","Monat","Jahr","Info"};
for (int a=0;a<4;a++)
{
table.addColumn(columnNames[a]);
}
tableE.getTableHeader().setResizingAllowed(false);
tableE.getTableHeader().setReorderingAllowed(false);
tableE.setColumnSelectionAllowed(true);
tableE.setRowSelectionAllowed(true);
tableE.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
tableE.setRowHeight(25);
pane.add(panel);
panel.add(Month);
panel.add(Year);
panel.add(Day);
panel.add(Tag);
panel.add(Monat);
panel.add(Jahr);
panel.add(enter);
panel.add(info);
panel.add(Entrys);
panel.add(tableE);
/*Day.addActionListener(new textfieldd());
Month.addActionListener(new textfieldm());*/
enter.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e)
{
entries[i].Year=Year.getText();
entries[i].Month=Month.getText();
entries[i].Day =Day.getText();
infor = info.getText();
i++;
for (int f=0;f<=i;f++)
{
tableE.setValueAt(entries[f], f, 1);
tableE.setValueAt(entries[f], f, 2);
tableE.setValueAt(entries[f], f, 3);
tableE.setValueAt(entries[f], f, 4);
}
}
});
/*info.addActionListener(new infolisten());*/
frame.setVisible(true);
frame.setSize(420, 600);
panel.setBounds(0, 0, 400, 400);
Month.setBounds(10, 10, 40, 20);
Day.setBounds(10, 35, 40, 20);
Year.setBounds(10, 60, 40, 20);
Tag.setBounds(55,10,60,20);
Monat.setBounds(55,35,40,20);
Jahr.setBounds(55,55,30,20);
info.setBounds(10,85,80,20);
enter.setBounds(10,110,70,20);
Entrys.setBounds(10,135,380,300);
GregorianCalendar cal = new GregorianCalendar();
int realDay = cal.get(GregorianCalendar.DAY_OF_MONTH);
int realMonth = cal.get(GregorianCalendar.MONTH);
int realYear = cal.get(GregorianCalendar.YEAR);
int currentMonth = realMonth;
int currentYear = realYear;
GregorianCalendar cal1 = new GregorianCalendar(realYear,realMonth,1);
nod=cal1.getActualMaximum(GregorianCalendar.DAY_OF_MONTH);
tableE.setDefaultRenderer(tableE.getColumnClass(0), new tblCalendarRenderer());
class tblCalendarRenderer extends DefaultTableCellRenderer{
public Component getTableCellRendererComponent (JTable table, Object value, boolean selected, boolean focused, int row, int column){
super.getTableCellRendererComponent(table, value, selected, focused, row, column);
if (column == 0 || column == 6){
setBackground(new Color(255, 220, 220));
}
else{
setBackground(new Color(255, 255, 255));
}
setBorder(null);
setForeground(Color.black);
return this;
}
}
}