- Bildlauf ein JPanel
Ich möchte ein JPanel mit einer Größe und den vorgegebenen position. Innerhalb der JPanel, ich habe bestimmte Anzahl von Elementen (buttons) eingefügt horizontal. Da mein JPanel hat eine definierte Breite, wenn ich viel hinzufügen, Schaltflächen, konnte ich das nicht erkennen. In diesem Fall brauche ich eine scrollbar für das JPanel. Aber das JPanel muss eine BESTIMMTE GRÖßE IN EINER BESTIMMTEN POSITION innerhalb eines JFrame. Die scrollbar des JPanel hat die Position unter horizontal. Kann mir jemand helfen? Ich habe es versucht, ohne Erfolg!
AFAIK, ist der Punkt, da Ihr
Berücksichtigen Sie auch
JPanel
hat eine Defined Width/Height/Size
, so, wenn Sie etwas hinzufügen, was darüber hinaus geht, es ist eine Größe, die Sie nicht sehen können, Sache, auch mit JScrollPane
Hinzugefügt, da auch JScrollPane
können nicht darüber hinaus gehen JPanel
's-Größe, so dass diese Komponenten sind versteckt immer 🙁 . Wenn man da nicht definieren, es ist eine Größe, die Bauteile zuerst Hinzugefügt, um die JPanel
und dann ist es preferredSize()
bestimmt wird implizit durch doLayout()
Art von Dingern, damit Ihre JScrollPane
funktioniert in dieser situation, aber nicht hier.Berücksichtigen Sie auch
JToolBar
oder geeignetes layout. Ohne ein sscce , verdeutlicht die Bedeutung der bestimmten Größe und bestimmte position, diese Frage kann nicht beantwortet werden, es in seiner jetzigen form.InformationsquelleAutor Chu | 2012-04-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden Sie eine JScrollPane und die Kraft seiner preferredSize, um die angegebene Größe (oder stellen Sie die scrollPane-container-LayoutManager auf null, und rufen Sie setBounds() auf die scrollpane). Auch die scrollbar-Richtlinien. Hier ist eine kleine Probe, dass:
entweder du verwendest einen LayoutManager, um position und Größe der Komponenten, legen Sie entweder den LayoutManager auf null, und rufen Sie setBounds() für die position und Größe der Komponente. In diesem Fall müssen Sie das tun, auf die JScrollPane
Können Sie mir helfen mit einem Beispiel, bitte?
Ich bearbeitet meine post, um zu zeigen, wie es möglich ist, zu zwingen, die Position und die Größe der JScrollPane
Ausgezeichnet! Danke, mein Freund.
InformationsquelleAutor Guillaume Polet
Fügen Sie alle Tasten auf Ihrer Tafel. Dann fügen Sie das panel zu scrollpane.
Sobald Sie das add-buttons im panel hinzufügen panel zu scrollpane.
Und fügen Sie dieses Bedienfeld, um Ihren Rahmen.
Sorry etwas schlecht in Englisch..
determinate
bedeutet?"spezifische" jeje 😀
Arr, ist möglich, wenn die post ein kleines Beispiel, mit den Anforderungen, die ich schrieb?
Haben Sie versucht, den oben genannten code? Verwenden Sie die setSize() ScrollPane..
InformationsquelleAutor Sachin Mhetre
Hier sind einige mögliche Lösungen:
oder
Point
oderRectangle
gibt es die MethodescrollRectToVisible
z.B.myPanel.scrollRectToVisible(myButton.getBounds());
InformationsquelleAutor mKorbel