R
Rogerle
Gast
Hallo !
Ich habe einem JPanel einen eigenen OKButton hinzugefügt.
Nun mein Problem:
Setze ich in der Klasse BKNButton den Rahmen (this.setBorder), dann erscheint
das Icon sofort am linken Rand des Buttons.
Kommentiere ich den setBorder aus , wird ein kleiner Abstand gelassen, so wie es sein soll.
Was soll das ???
Danke
Ich habe einem JPanel einen eigenen OKButton hinzugefügt.
Code:
GridBagConstraints okButtonGridBagConstraints = new GridBagConstraints();
jPanel = new JPanel();
jPanel.setLayout(new GridBagLayout());
okButtonGridBagConstraints.gridx = 0;
okButtonGridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;
okButtonGridBagConstraints.gridy = 0;
okButtonGridBagConstraints.weightx = 1.0D;
okButtonGridBagConstraints.insets = new java.awt.Insets(5,5,5,5);
jPanel2.add(getBknOKButton(), okButtonGridBagConstraints);
private JButton getBknOKButton() {
if (bknOKButton == null) {
bknOKButton = new BKNOkButton();
}
return bknOKButton;
}
public class BKNOkButton extends BKNButton {
public BKNOkButton() {
super();
this.init();
}
private void init() {
this.setText("OK");
this.setName(BUTTON_OK);
this.setIcon(BknImageFactory.getImage(BKNImmages.IMAGE_OK));
this.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
}
}
public class BKNButton extends JButton {
public BKNButton() {
super();
this.init();
}
private void init() {
this.setPreferredSize(new Dimension(100, 26));
this.setMinimumSize(new Dimension(80, 26));
this.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
this.setMargin(new Insets(2, 14, 2, 14));
//Hier kommt das Problem:
this.setBorder(javax.swing.BorderFactory.createBevelBorder(
javax.swing.border.BevelBorder.RAISED, Color.lightGray,
Color.darkGray));
setFont(new Font("sanserif", java.awt.Font.PLAIN, 12));
}
}
Nun mein Problem:
Setze ich in der Klasse BKNButton den Rahmen (this.setBorder), dann erscheint
das Icon sofort am linken Rand des Buttons.
Kommentiere ich den setBorder aus , wird ein kleiner Abstand gelassen, so wie es sein soll.
Was soll das ???
Danke