2012-04-13 12 views
0

Ich verwende den Netbeans RCP und möchte die Zellenauswahl in einer Jtable besser sichtbar machen. Deshalb mag ich rote Linien wie folgt zeichnen:Zeilen zur Unterstützung der Zellenauswahl

Siehe Screenshot: http://i.stack.imgur.com/WRRyq.png

ich nur GIMP zeichnen die Linien auf dem Screenshot ;-)

Bei Auswahl erhöht und mehr Zellen werden ausgewählt Die roten Linien sollten die Grenzen der Auswahl sein und sollten die gesamte Breite im Spaltenheader und die gesamte Höhe im Zeilenkopf markieren.

Meine Tabelle wird viel größer mit einer festen Spaltenzahl von ~ 35 und undefinierten Anzahl von Zeilen sein. Hat jemand so etwas schon mal versucht ??

Vielen Dank im Voraus! - Michael

+0

haben Hast du irgendwas probiert? –

+0

Haben Sie begonnen, sich mit der überlagerten Farbfunktion Ihrer benutzerdefinierten JTable-Variante zu messen? – bmkorkut

+0

Ich habe versucht, das ETable zu untergliedern, um die paintComponent-Methode zu überschreiben, weiß aber nicht genau, wie. Die initComponent ist für die Bearbeitung durch NetBeans gesperrt. Ich googelte noch ca. 2 Wochen, aber für die Netbeans sind RCP nicht so viele Beispiele. Es gibt ein post-creation und post-init zum Ändern der initComponent-Methode, aber das scheint nicht das zu sein, was ich für die Unterklassenbildung brauche. Ich denke darüber nach, sich von Matisse zu entfernen, um mein Problem gelöst zu bekommen ... –

Antwort

0

Diese können Sie auf hilfreiche Informationen verweisen. Entschuldigung, ich kann keine genaue Antwort auf Ihren Fall geben.

Umriss-Ansicht ist eine große Fett JTable, so im Grunde nach Informationen über Elternkomponenten suchen wird Ihnen mehr Informationen über interne Dinge geben.

org.openide.explorer.view.OutlineView outlineView;

Zeilenauswahl zu aktivieren: outlineView.getOutline().setRowSelectionAllowed(true);

Um Zeilenauswahlmodus zu definieren:outlineView.getOutline().setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

Zellenauswahl zu deaktivieren:outlineView.getOutline().setCellSelectionEnabled(false);

+1

Danke! Ihre Antwort war nicht die Antwort, sondern gab mir einen Hinweis darauf, wie Sie das Problem lösen können! –

+0

Sie sind herzlich willkommen :). – JMelnik

Verwandte Themen