Hallo,
ich habe drei Buttons in einem Panel (mit GridLayout) welches in einen JFrame (GridBagLayout) eingehaengt werden soll. Es sind drei gleichgrosse Button, die auf der rechten oberen Seite untereinander erscheinen (cancel, help, ok).
weiter unten werden sie in einen GridBagLayout eingehaengt (frame is JFrame):
Die Buttons befinden sich an ihrem Platz und ueberlagern sich nicht mit anderen Elementen. Ich hoffe dass Ihr mir mit Code weiterhelfen koennt, bei der Fuelle der Java API bin ich total verwirrt und hab das entsprechende noch nicht selber gefunden.
Probleme:
Nun will ich, dass quasi der rechte Bereich des Fensters, auf dem sich die Buttons befinden, von oben bis unten (gbc.gridy = 0 bis gbc.gridheight = 10) weiss hinterlegt ist - wie geht das ?
Ich will so etwas wie Insets bei den Buttons festlegen, sie sollten (wie oben angedeutet) jewels um 2 zu allen Seiten eingeschraenkt sein - wie mache ich das ?
Ich haette gerne eine dickere EtchedBorder - wie stelle ich die Dicke der Border ein ?
Edit Illuvatar: Das heißt [ code][ /code] und nicht [ java][ /java]
ich habe drei Buttons in einem Panel (mit GridLayout) welches in einen JFrame (GridBagLayout) eingehaengt werden soll. Es sind drei gleichgrosse Button, die auf der rechten oberen Seite untereinander erscheinen (cancel, help, ok).
Code:
JButton cancel = new JButton( szCancel);
cancel.setBackground( Color.RED);
cancel.setBorder( new EtchedBorder( Color.BLACK, Color.WHITE));
JButton help = new JButton( szHelp);
help.setBackground( Color.ORANGE);
cancel.setBorder( new EtchedBorder( Color.BLACK, Color.WHITE));
JButton ok = new JButton( szOK);
ok.setBackground( Color.GREEN);
ok.setBorder( new EtchedBorder( Color.BLACK, Color.WHITE));
JPanel jpButtonBlock = new JPanel( new GridLayout(3,1));
jpButtonBlock.add( cancel);
jpButtonBlock.add( help);
jpButtonBlock.add( ok);
Code:
// ##### Layout #####
GridBagLayout gbl = new GridBagLayout();
frame.getContentPane().setLayout(gbl);
GridBagConstraints gbc = new GridBagConstraints();
// panel : labelSeperatorOptions
gbc.gridx = 3;
gbc.gridy = 0;
gbc.gridwidth = 1;
gbc.gridheight = 10;
gbc.insets = new Insets(2,2,2,2);
gbc.weightx = 1;
gbc.weighty = 1;
gbc.anchor = GridBagConstraints.NORTHEAST;
gbc.fill = GridBagConstraints.HORIZONTAL;
gbl.setConstraints( jpButtonBlock, gbc);
frame.getContentPane().add( jpButtonBlock);
Probleme:
Nun will ich, dass quasi der rechte Bereich des Fensters, auf dem sich die Buttons befinden, von oben bis unten (gbc.gridy = 0 bis gbc.gridheight = 10) weiss hinterlegt ist - wie geht das ?
Ich will so etwas wie Insets bei den Buttons festlegen, sie sollten (wie oben angedeutet) jewels um 2 zu allen Seiten eingeschraenkt sein - wie mache ich das ?
Ich haette gerne eine dickere EtchedBorder - wie stelle ich die Dicke der Border ein ?
Edit Illuvatar: Das heißt [ code][ /code] und nicht [ java][ /java]