Swing JToolBar

kaoZ

Top Contributor
Aloha, nur mal eine kleine Frage Zwischendurch, welches Layout sollte man für "normalerweise" eine JToolBar verwenden ?

Standard ?
BoxLayout ?
FlowLayout ?

Ziel ist Komponenten von Links nach rechts anzuordnen OHNE das diese wie z.B ein JTextField die gesamte restliche breite einnehmen und trotz gesetzter preferredSize die Höhe des höchstens Elementes bekommen :)

Jemand einen Tipp ?
 

Flown

Administrator
Mitarbeiter
Also wenn du nichts verrücktes vor hast, dann einfach den Standard Layoutmanager nehmen. Der arrangiert dir das gewünschte.
 

kaoZ

Top Contributor
Naja wenn ich das Standardlayout verwende und z.B ein JTextField hinzufüge , füllt der layoutmanager automatisch damit die restliche breite, klar könnte ich jetzt sagen ich adde ein filler, der das ganze dahinter begrenzt, oder über das BoxLayout eine rigid area, aber gibts da nicht eine saubere Lösung ? :)
 

kaoZ

Top Contributor
Ja die Toolbar hat natürlich ihren eigenen Layout Manager, diese streckt allerdings Komponenten, wie z.b ein jtextfield auf die maximale breite des Containers.
Meine frage war ob es eine saubere Lösung gibt als
Code:
Box.createRigidArea();
als nachfolgende komponente einzufügen um dies zu unterbinden, außerdem wird z.b ein jtextfield auch auf die höhe der höchsten Komponente in der Toolbar gestreckt, und die preferredSize() ignoriert.

Wenn ich jetzt also ein Jbutton mit ImageIcon hinzufügen und dann ein Textfeld , bekommt das Textfeld automatisch volle breite und die höhe des Buttons , und das soll ebenda nicht passieren
 
Zuletzt bearbeitet:

TheSorm

Bekanntes Mitglied
Wiso wilst du denn Textfelder in die Tool bar packen ?! normalerweiße solten doch da buttons bzw Bilder oder änliches rein über die man ein "Tool" auswählen kann
 

TheSorm

Bekanntes Mitglied
Und das willst du wirklich in einer Toolbar lösen ? weiß nich ob das so gut ist . Oder ob du da lieber selbst was schreiben solltest bzw eine eigende toolbar von der richtuigen ableiten.
 

kaoZ

Top Contributor
das war der plan , bzw. Habe ich genau das gemacht , deswegen noch die frage nach dem layoutmanager der am geeignetsten ist um es ebenda auch grafisch umzusetzen ;)

Ich werde nochmal etwas probieren
 

TheSorm

Bekanntes Mitglied
Naja Grid Layout ist das einfachste aber ich denke GridBagLayout macht zwar arbeit aber ist am Flexibelsten um alle deine wünsche zu erfüllen.
 

diggaa1984

Top Contributor
Also JToolBar hat ja standardmäßig BoxLayout definiert. Das schreibt:
For all directions, components are arranged in the same order as they were added to the container.

BoxLayout attempts to arrange components at their preferred widths (for horizontal layout) or heights (for vertical layout). For a horizontal layout, if not all the components are the same height, BoxLayout attempts to make all the components as high as the highest component. If that's not possible for a particular component, then BoxLayout aligns that component vertically, according to the component's Y alignment. By default, a component has a Y alignment of 0.5, which means that the vertical center of the component should have the same Y coordinate as the vertical centers of other components with 0.5 Y alignment.

Fragt sich nur, wann eine Anpassung nicht möglich ist. Hast du mal versucht die maximale Höhe des Textfeldes zu definieren?
 

kaoZ

Top Contributor
Ja , trägt aber kein Effekt da sich die Höhe am höchsten Element orientiert, dies ist bzw. sind die Buttons mit gesetzem ImageIcon in 32x32, das Textfeld wird demnach ebenso hoch , ich werde wahrscheinlich das Textfeld weglassen und stattdessen ein Icon dafür erstellen, welches dann ein Dialog zum suchen öffnet , ist denke ich einfacher als hier ewig zu probieren die richtigen layoutmanager zu verschachteln :)
 

diggaa1984

Top Contributor
Wie du lesen kannst, ist ja auch im BoxLayout eine Variante berücksichtigt, wo ein Element nicht an die anderen Höhen angepasst werden kann. Wäre mal interessant zu wissen wann dieser Fall eintritt :D
 

kaoZ

Top Contributor
ja das wäre allerdings Interessant , ich hab es nun über ein Icon gelöst welches einen zusätzlichen Dialog öffnet, alles andere war unschön nicht intuitiv, da ich sonst entweder selber in den zeichenprozess eingreifen müsste oder eben mit
Code:
BorderFactory.createEmptyBorder();
hätte arbeiten müssen um den gewünschten Effekt zu erzielen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
kaoZ Swing JToolBar, ImageIcon werden teilweise verdeckt AWT, Swing, JavaFX & SWT 0
U JToolbar resizable o. Ä. AWT, Swing, JavaFX & SWT 3
U JToolBar Button nicht fokussieren AWT, Swing, JavaFX & SWT 2
B JToolBar dynamisch auf mehrere Zeilen erweitern AWT, Swing, JavaFX & SWT 2
Landei Swing JToolbar: Textfelder mit normaler Höhe? AWT, Swing, JavaFX & SWT 2
P Swing JComoBox auf JToolBar AWT, Swing, JavaFX & SWT 4
B Komponente "sauber" entfernen(JToolBar) AWT, Swing, JavaFX & SWT 4
I Swing Optik eines JButton an JToolBar anpassen AWT, Swing, JavaFX & SWT 5
S Drag wie bei JToolbar mit JPanel AWT, Swing, JavaFX & SWT 3
H Swing Den Button einer JToolBar gedrückt halten AWT, Swing, JavaFX & SWT 9
S Hintergrundfarbe in JToolbar nicht angezeigt AWT, Swing, JavaFX & SWT 2
C JToolbar in JTable AWT, Swing, JavaFX & SWT 4
R JMenu in JToolBar AWT, Swing, JavaFX & SWT 6
O Button auf JToolBar rechtsbündig AWT, Swing, JavaFX & SWT 2
M Swing JToolBar Probleme AWT, Swing, JavaFX & SWT 14
A JToolbar lässt sich aus dem Fenster lösen AWT, Swing, JavaFX & SWT 2
E JToolBar ausrichten AWT, Swing, JavaFX & SWT 2
J Swing JToolBar Button mit Icon AWT, Swing, JavaFX & SWT 4
J JToolBar AWT, Swing, JavaFX & SWT 2
M JToolbar nebeneinander? AWT, Swing, JavaFX & SWT 3
H JToolBar Rollover AWT, Swing, JavaFX & SWT 2
D JtoolBar feste Breite ? AWT, Swing, JavaFX & SWT 13
G Icon ans Ende einer JToolbar AWT, Swing, JavaFX & SWT 7
B Toolbar, Toolbar In Toolbar, alterna zu JToolbar AWT, Swing, JavaFX & SWT 3
G JToolBar - addSeparator() funktioniert nicht AWT, Swing, JavaFX & SWT 3
G JToolBar Separator AWT, Swing, JavaFX & SWT 6
C JToolBar ein/ausblenden AWT, Swing, JavaFX & SWT 6
W JToolBar - wohin damit? AWT, Swing, JavaFX & SWT 4
Noar Problem mit Hinzufügen von JToolBar AWT, Swing, JavaFX & SWT 2
G JToolbar gleich als eigenes Fenster öffnen AWT, Swing, JavaFX & SWT 2
A JToolBar: Welcher Button wurde gedrückt? AWT, Swing, JavaFX & SWT 5
A JToolBar: Buttonbreite festlegen AWT, Swing, JavaFX & SWT 7
M Problem mit JComboBox in JToolBar AWT, Swing, JavaFX & SWT 3
padde479 Mehrere JToolBar setzen AWT, Swing, JavaFX & SWT 2
P JMenuBar und JToolBar Anzeige Probleme AWT, Swing, JavaFX & SWT 5
A Hintergrundfrabe eines JButtons innerhalb eines JToolBar AWT, Swing, JavaFX & SWT 4
G JButton wie in JToolBar AWT, Swing, JavaFX & SWT 7
vogella JToolBar mit JTextField - Größe des Text Feldes festlegen AWT, Swing, JavaFX & SWT 2
C JToolBar nicht minimieren beim Minimieren des Eltern-Frames AWT, Swing, JavaFX & SWT 4
S Mehere Componenten setEnabled(false) in JToolBar AWT, Swing, JavaFX & SWT 4
S JToolBar und JTabbedPane AWT, Swing, JavaFX & SWT 2
B scrollbare jtoolbar sobald fenster zu klein wird AWT, Swing, JavaFX & SWT 5
B floating jtoolbar von programmstart an? AWT, Swing, JavaFX & SWT 4
B JToolBar Button größe AWT, Swing, JavaFX & SWT 10
I Button in JToolbar gleich groß AWT, Swing, JavaFX & SWT 2
I Hat jemand eine JToolBar? AWT, Swing, JavaFX & SWT 4
A Vertikaler JSeparator in einer JToolbar AWT, Swing, JavaFX & SWT 2
A JToolBar nur oben andockbar machen - wie? AWT, Swing, JavaFX & SWT 6
M Gruppierungen in JToolbar AWT, Swing, JavaFX & SWT 3
T Mehrere Fragen zu JToolBar AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben