Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi, einen hab ich noch ;)

Man nehme einen JFrame und adde einen JPanel mit der Hintergrundfarbe Schwarz.

Auf dieses Panel packt man nun einen JScrollPane, der eine Tabelle enthält, welche dynamisch befüllt wird.

Die Hintergrundfarbe von ScrollPane und Tabelle ist ebenfalls auf Schwarz gesetzt.

Wenn genug Zeilen in der Tabelle sind, sodass man drin rumscrollen kann, ist alles gut. Hat man aber zum Beispiel nur eine Zeile in der Tabelle, so bleibt der Rest des ScrollPanes leer, wird aber NICHT schwarz, wie man eigentlich annehmen könnte.

Meine Vermutung ist, dass es Look & Feel abhängig ist, ob man die Hintergrundfarbe eines JScrollPanes beeinflussen kann, sicher weiß ich es aber nicht.

Habe diverse L&Fs ausprobiert, bei keinem ging es.

Nun meine Frage: kennt jemand ein L&F, bei dem es geht, oder muss ich meine Tabelle immer so weit mit leeren, nicht editierbaren Zeilen auffüllen, dass ein Scrollbalken erscheint und die Hintergrundfarbe vom JTable das Problem löst?

Geschrieben

Der Trick liegt darin JScrollPane und JViewPort auf opaque=false zu setzen, dann klappts:

  public static void main(String[] args) throws Exception {


    JTable table              = new JTable(10, 2);

    JScrollPane scrollPane    = new JScrollPane(table);

    [b]scrollPane.getViewport().setOpaque(false);

    scrollPane.setOpaque(false);[/b]


    JPanel panel              = new JPanel(new BorderLayout());

    panel.setBackground(Color.BLACK);

    panel.add(scrollPane);


    JFrame frame              = new JFrame();

    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    frame.setSize(800, 600);

    frame.setLocationRelativeTo(null);

    frame.setContentPane(panel);

    frame.setVisible(true);


  }

Geschrieben

Danke für die schnelle Hilfe!

Auf scrollPane.setOpaque(false); war ich auch gekommen - und dann ging das große Kopfzerbrechen los.

Du hast es echt drauf perdi, Respekt!

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...