Hallo zusammen,
eine Frage, warum kann ich folgenden Parameter nicht mit "this" angeben?
aber mit
klappt es? Das JOptionPane wird in einer Klasse, die von JFrame erbt. Aber warum geht das nicht mit Parameter "this"?
Gesamte Methode lautet
Liegt das daran, dass "this" hier auf die innere Klasse in der Methode zeigt?
eine Frage, warum kann ich folgenden Parameter nicht mit "this" angeben?
Java:
int returnValue = JOptionPane.showConfirmDialog(this,einKnoten,"",JOptionPane.OK_CANCEL_OPTION);
aber mit
Java:
int returnValue = JOptionPane.showConfirmDialog(null,einKnoten,"",JOptionPane.OK_CANCEL_OPTION);
klappt es? Das JOptionPane wird in einer Klasse, die von JFrame erbt. Aber warum geht das nicht mit Parameter "this"?
Gesamte Methode lautet
Java:
private void defineActionLöschen() {
actDelete = new AbstractAction("Knoten löschen") {
public void actionPerformed(ActionEvent e) {
knotenCache = getSelectedNodes();
String message = "";
if (knotenCache.length <= 1) {
message = "Soll der ausgewählte Knoten wirklich gelöscht werden?";
} else {
message = "Sollen die ausgewählen Knoten wirklich gelöscht werden?";
}
int returnValue = JOptionPane.showConfirmDialog(jTree, message,
"", JOptionPane.OK_CANCEL_OPTION);
if (returnValue == JOptionPane.OK_OPTION) {
// System.out.println(knotenCache[0].getParent()); Zeigt an
// ob ein Parentknoten vorhanden ist
for (Knoten cacheNode : knotenCache) {
if (cacheNode.getParent() != null) {
treeModel.removeNodeFromParent(cacheNode);
cacheNode = null;
jtfStatus.setText("Knoten gelöscht");
} else {
jtfStatus
.setText("Knoten kann nicht gelöscht werden");
}
}
}
actPaste.setEnabled(false);
}
};
}
Liegt das daran, dass "this" hier auf die innere Klasse in der Methode zeigt?
Zuletzt bearbeitet: