Wie kann ich feststellen, ob die Bildlaufleiste eines JScrollPanes die Sichtbarkeit ändert?

8

Ich habe JScrollPane, das einige Bilder in einer horizontalen Reihe enthält. Wenn die Bildzeile für den Anzeigeanschluss zu lang ist, wird in JScrollPane eine Bildlaufleiste angezeigt, die die Höhe des Ansichtsanschlusses verringert. Ich möchte die Bilder so skalieren, dass sie auf den View-Port passen. Wie kann ich feststellen, dass der Ansichtsport seine Größe geändert hat? Leider scheint die Registrierung von Change Event Handlern nicht zu funktionieren.

    
xmjx 02.05.2012, 09:38
quelle

2 Antworten

12

Die Verwendung des Change-Listeners auf dem ViewPort scheint für mich zu funktionieren. Hier ist eine kleine Demo davon:

%Vor%     
Guillaume Polet 02.05.2012, 09:50
quelle
1

Ich habe die HierarchyBoundsListener verwendet, um Änderungen zu erkennen in der Größe von JScrollPane:

%Vor%

Hier ist eine bequeme Methode zum Anhängen des Listeners:

%Vor%     
Matthias Braun 10.03.2016 18:03
quelle

Tags und Links