Announcement

Collapse
No announcement yet.

Flow Layout bricht nicht um

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Flow Layout bricht nicht um

    Hallo, ich bin am verzweifeln, ich habe ein JScrollPane, in diesem ein GridBagLayout, in dem wiederrum mehrere Flowlayouts untereinander angeordnet sind.
    In den Flow Layouts sitzen Labels, die zum Anzeigen von Namen dienen. Aber das Flowlayout bricht am rechten Ende einfach nicht in die nächste Zeile um, und zeichnet munter in einer zeile weiter, obwohl das JScrollpane die anweisung hat Horizontal keinenen Scroll anzubieten.
    Wieso ist das so?? wie bringe ich das Flowlayout dazu am bildschirmende umzubrechen, und dann in der nächsten zeile die ihm hinzugefügten labels zu zeichenn.

    Tobias

  • #2
    Hallo Tobias,<br>
    das FlowLayout bricht nur in eine neue Zeile um, wenn im zugehörigen<br>
    Container in der Breite kein Platz mehr ist. D.h., Du musst die Breite<br>
    des Containers, der FlowLayout hat, so begrenzen, dass der Umbruch<br>
    erzwungen wird, z.B. mit flowLayoutPanel.setPreferredSize(..).<br>
    Die Frage ist allerdings: wenn Du eh schon GridBagLayout hast, <br>
    warum ordnest Du dann die Namenslabel mit FlowLayout an, statt sie<br>
    auch ins GridBagLayout DIREKT einzubauen?
    <p>
    Klau

    Comment


    • #3
      Nun ja es ist so, dass da unterschiedliche abteilungen angezeigt werden. Jede abteilung soll in eine neue Zeile, wenn in der aber kein platz mehr ist, dann soll, das ganze umbrechen und in der nächsten szeile weitermachen. das was passoieren soll wäre genau so, wie ich dachte, dass ein flwlayout das tut, ich kann das ganze natürlich auch hart positionieren, in dem ich ein GridBagLayout verwende, dann muss ich halt immer ausrechnen ob noch platz in einer Zeile ist oder nicht, und das würde viele CodeZeilen ergeben, warum also die Arbeit machen, wenn das Flowlayout das ganze eigentlich so automatisch machen sollte wie ich das will, vor allem dann, wenn ein user die Fenstergröße verändert. Aber das macht er ja nicht. Wieso weis Gott allein, ich habe jetzt die prefferded size, maximumSize und minimumSize in allen möglichen variationen verändert, aber gebracht hat das net viel, der macht das flowlayout immernoch so lang wie er lustig ist, oder er schneidet einfach alles ab. Umbrechen, tut er einfach nicht.
      Tobia

      Comment


      • #4
        Ich muss mich noch ein bischen verbessern:
        mit set prefered size, da schreibt er dann alle namen so lange in eine neue Zeile, bis die preffered size voll ist, alle namen die dann noch hineinkämen, sind dann einfach abgeschnitten. er nimmt die prefferedsize als feste größe.
        Das kam in meiner ersten antwort warscheinlich nicht herrüber - sorry. Aber wirklich von alleine so lange umbrechen, bis alle namen da sind will er trotzdem nicht, muß ich warscheinlich die größe in gottesnamen berechnen - oder nicht

        Comment


        • #5
          Hallo,

          meine Vermutung ist, dass das JLabel das Umbrechen unterstützen muss, was es meiner Meinung nicht tut (einzeiliger Text).
          Wenn man stattdessen TextArea (ReadOnly, NoBorder, NoScrollbar) verwendet, würde der Text auch mehrzeilig umgebrochen werden.

          Hoffe das stimmt bin nicht so bewandert in AWT/Swing.

          Hoffe geholfen zu haben

          Hans-Christop

          Comment

          Working...
          X