hier erstmal der wichtigste Codeabschnitt:
Code: Alles auswählen
private void alteFelder() {
group = new QGroupBox();
grid = new QGridLayout();
if (check.isChecked()==true) {
System.out.println("ischecked = true");
for (int i = 0; i < datumListe.size(); i++) {;
datum = new QLineEdit();
fach = new QComboBox();
aufgabe = new QTextEdit();
aufgabe.setFixedSize(new QSize(160, 80));
fach.addItems(faecher);
datum.setText("bla");
datum.setText(datumListe.get(i).text());
fach.setCurrentIndex(fachListe.get(i).currentIndex());
aufgabe.setText(aufgabeListe.get(i).toPlainText());
grid.addWidget(datum, i, 0);
grid.addWidget(fach, i, 1);
grid.addWidget(aufgabe, i, 2);
}
} else {
for (int i = 0; i < datumListe.size(); i++) {
String[] datumArray = datumListe.get(i).text().split("\\.");
if ((Integer.parseInt(datumArray[2]) >= (datumAktuell
.getYear() + 1900)
&& Integer.parseInt(datumArray[1]) >= (datumAktuell
.getMonth() + 1) && Integer
.parseInt(datumArray[0]) >= datumAktuell.getDate())
|| (Integer.parseInt(datumArray[2]) >= (datumAktuell
.getYear() + 1900) && Integer
.parseInt(datumArray[1]) > (datumAktuell
.getMonth() + 1))
|| Integer.parseInt(datumArray[2]) > (datumAktuell
.getYear() + 1900)) {
datum = new QLineEdit();
fach = new QComboBox();
aufgabe = new QTextEdit();
aufgabe.setFixedSize(new QSize(160, 80));
fach.addItems(faecher);
datum.setText(datumListe.get(i).text());
fach.setCurrentIndex(fachListe.get(i).currentIndex());
aufgabe.setText(aufgabeListe.get(i).toPlainText());
grid.addWidget(datum, i, 0);
grid.addWidget(fach, i, 1);
grid.addWidget(aufgabe, i, 2);
}
}
}
group.setLayout(grid);
scroll.setWidget(group);
group.setFlat(true);
}
Die Methode wird aufgerufen, sobald ich einen Dialog im Hauptprogramm öffne. Außerdem dient sie als Slot. In dem Dialog gibt es eine QCheckBox. Wenn ich dort draufklicke, wird diese Methode auch geöffnet. Das Problem liegt jetzt an folgender Stelle: Wenn die Methode beim Dialogöffnen ausgeführt wird, läuft sie einwandfrei. Klicke ich jedoch die CheckBox an, so kann ich die Elemte aus den 3 LinkedList (datumListe,fachListe und aufgabeListe) nicht mehr lesen (habe durch system.out.prinln versucht auszugeben). Die Anzahl kann ich jedoch mit datumListe.size() ausgeben. Das komische ist jetzt, dass ich auf die Elemte wieder zugriff habe, wenn ich die 3. letzte Zeile (scroll.setWidget(group)) auskommentiere bzw. lösche. Der Fehler verwirrt mich total. Bitte helft mir
MfG
Tobi