JToolBar größe ändern und links festsetzen?

hi Leute,
ich möchte eine ToolBar unter das JMenu setzen (BorderLayout),
nagut ich hab einfach eine JToolBar erstellt mit ein paar Buttons, allerdings ist diese Werkzeugleiste im Fenster ziemlich groß geraten im Vergleich zur MenuBar… gibs eine Methode um die Size einzustellen? toolbar.setSIze(x,y) funktioniert hier nicht… oder verändert sich die größe dynamisch je nachdem wie man das Fenster großzieht?
ausserdem möchte ich noch dass diese Leiste an der linken Seite angedockt bleibt, also wie bei der MenuBar…
im moment ist es so wenn ich das fenster größer ziehe bewegt sich die leiste immer mehr zur mitte hin aber es soll am linken Rand anliegen…
und kann man dieses ziehfeld auf der linken Seite wegmachen , also das wo wenn man mit der maus draufgeht und es ziehen kann um die Leiste abzudocken? schaut doch merkwürdig aus…

lies dir mal das durch: How to Use Tool Bars
Hier findest du alle Methoden zur Toolbar: Java API JToolBar

Ohne deinen Quellcode zu kennen kann man dir ansonsten schlecht weiterhelfen.
Poste ihn doch mal!

Du hast dem Thread SWT als Präfix verpasst, sollte wohl eher Swing sein.
Alles habe ich nicht verstanden. Die Größe der Toolbar orientiert sich an der Größe der darin enthaltenen Komponenten.
Für mich hört es sich so an, als würdest Du die Funktionalität der Toolbar (an/abdocken, verschieben) gar nicht nutzen wollen. Warum dann überhaupt eine Toolbar und nicht einfach nur ein Panel an der passenden Stelle postioniert?

naja es soll eher eine "Button Bar " also quasi eine toolbar sein, die funktionalität kommt später noch auf die buttons… die button bar soll unter dem menü anliegen…
hm aber das mit dem Panel klingt auch nicht schlecht … verwendet man für sowas eher ein ganz normales Panel oder eine Toolbar? Ich glaub ich weiss hier gar nicht genau für was die JToolBar eigentlich eingesetzt wird :smiley:
bei WOrd z.B hat man ja auch ne Menüleiste auf die man auf die wichtigsten funktionalitäten bzw. im Kontext schnell zugreifen soll, hier soll das genauso sein…

hier mein Code:

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JPanel;
import javax.swing.JToolBar;

/**
 *  ButtonBar.
 * Zeigt eine Liste mit Buttons. Hier ist zu überlegen, ob die Buttons für beide Seiten angezeigt werden sollen,
 * oder nur für eine Seite.
 * 
 */
public class ButtonBar extends JPanel implements ActionListener {
	
	private static final int HORIZONTAL = 0;

	public ButtonBar() {
		
		JToolBar buttonBar = new JToolBar("Werkzeugleiste", HORIZONTAL);
		this.add(buttonBar);			
		
		
		
		buttonBar.add(new JButton("Drehen"));
		buttonBar.add(new JButton("Verkleinern"));
		buttonBar.add(new JButton("Vergrößern"));
		buttonBar.add(new JButton("Drehen"));
		buttonBar.add(new JButton("Verkleinern"));
		buttonBar.add(new JButton("Vergrößern"));
		buttonBar.add(new JButton("Drehen"));
		buttonBar.add(new JButton("Verkleinern"));
		buttonBar.add(new JButton("Vergrößern"));
		
		
		
		
	}

	
	public void actionPerformed(ActionEvent arg0) {
		
		
	}
	

}

ok es fehlen noch alle Funktionen und auch die Icons aber ich wollte das Design erstmal hinbekommen…

Kleiner Hinweis am Rande, zur besseren Lesbarkeit kannst du deinen Code mit Java-Tags umranden, anstatt code, dann gibt es auch Syntax-Highlighting

Edit: Hast du dir die Links von KlemensyXYZ mal angeschaut? Dort steht nämlich wie man die Größe festlegt.

Word & Co hat das Toolbar Konzept ja schon seit einigen Jahren über den Haufen geworfen.
Mich selbst hat die JToolbar nie wirklich überzeugt. Ist meiner Meinung eher eine Spielerei und macht vielleicht Sinn wenn man eine riesige Anzahl an Funktionen auf mehreren Toolbars bereitstellen will/muss, was dann eher bei komplexerer / Spezial Software der Fall ist.
Wenn man aber ohnehin nur eine Toolbar mit einer überschaubaren Anzahl an Funktionen hat und der Anwender die Position der Toolbar nicht verändern können will/soll, warum dann nicht die Buttons direkt auf einen festen Platz in einem Panel positionieren - das man als Anwender ggf. auch ausblenden kann, wenn z.B. die wichtigsten Funktionen auch über Shortcuts aufrufbar sind.

Moin,

das sieht IMHO aber böse aus …
Wie willst Du bspw. mit einem bestimmten Button „Drehen“ später noch was machen??

Deklariere die Button einzeln und adde sie dann !
Java Code:
[LEFT]
[ol]
[li]JButton myButton_1 = new JButton();[/li][li]JButton myButton_2 = new JButton();[/li][li]// …[/li][li]buttonBar.add( myButton_1 );[/li][li]buttonBar.add( myButton_2 );[/li][/ol]

[/LEFT]

wobei es natürlich „sprechende“ Variablennamen sein sollten !!

Gruß
Klaus

Ja hab ein wenig weiter gemacht denke ich benutze nur ein normales Panel…
hab noch Probleme mit der Größe, sobald man das Fenster großzieht werden die buttons auch größer und das ganze Panel verschiebt sich zur Mitte hin anstatt links festzusitzen, ausserdem ist die Größe der Buttons noch viel zu groß wie kann ich das alles machen? naja Das Gerüst steht schonmal mit den Actions, Icons und Tooltips…

Das hängt alles von den verwendeten LayoutManagern und evtl. Größenvorgaben ab.
Wenn Du die Buttons z.B. in einem JPanel mit linksorientierten FlowLayout platzierst und dieses in den NORTH Bereich eines BorderLayout packst, vergrößert sich nichts und es schiebt sich auch nichts in die Mitte.

Du kannst auch eine eigene Buttonklasse (abgeleitet von JButton) erstellen, in der du alles genau so einstellst, wie du die Buttons auf der Toolbar haben möchtest.