Hallo erstmal (=
Ich hab jetzt mal 'ne Frage bezüglich dem Zeichnen auf Swing-Containern. Denn irgendwie will ich das "Pixelsystem" in JFrames nicht verstehen. Nehmen wir mal dieses Programm als Beispiel:
Da fände ich es jetzt logisch, dass das gezeichnete Rechteckt bei 5 Pixel von oben und links anfängt und 5 Pixel von rechts unten und rechts rechts aufhört... Aber irgendwie komme ich auf soein Ergebnis:
Jetzt wieder zurück zu meiner Frage: Woher kommen diese zusätzlichen Pixel? Warum ist das nicht ein gleichmässiges Viereck? Um es richtig zu machen muss ich durch ausprobieren irgendwelche Werte mehr abziehen, aber das kanns ja eig. nicht sein, will einfach nur mal wissen, warum das so ist, und wie man das "umgehen kann".
- U2nt
Ich hab jetzt mal 'ne Frage bezüglich dem Zeichnen auf Swing-Containern. Denn irgendwie will ich das "Pixelsystem" in JFrames nicht verstehen. Nehmen wir mal dieses Programm als Beispiel:
Java:
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Why extends JPanel {
private static final long serialVersionUID = 33117487664410168L;
public static void main(String[] args) {
new Why();
}
public Why() {
JFrame f = new JFrame("Test");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setLayout(new BorderLayout());
f.setPreferredSize(new Dimension(500, 500));
f.add(this, BorderLayout.CENTER);
f.pack();
f.setLocationRelativeTo(null);
f.setVisible(true);
}
@Override
public void paintComponent(Graphics g) {
g.drawRect(5, 5, getwidth() - 5, getHeight() - 5);
}
}
Jetzt wieder zurück zu meiner Frage: Woher kommen diese zusätzlichen Pixel? Warum ist das nicht ein gleichmässiges Viereck? Um es richtig zu machen muss ich durch ausprobieren irgendwelche Werte mehr abziehen, aber das kanns ja eig. nicht sein, will einfach nur mal wissen, warum das so ist, und wie man das "umgehen kann".
- U2nt