Hallo zusammen,
wieder einmal ist ein kleines Problem aufgetaucht, auf das ich keine Lösung fand...
für mein Derzeitiges OCR-Projekt lade ich ein Bild als Hintergrund in ein ImagePanel.
Dieses ImagePanel befindet sich in einem JFrame. (Neben 2 weiteren, normalen JPanels)
Klasse ImagePanel (auf das nötigste beschränkt:
Das ganze sieht dann so aus:

Nun ist mir aufgefallen, dass mein JFrame (also mein komplettes GUI) zwar eine feste Größe hat (das war so vorgegeben), diese jedoch veränderbar ist.
Klar, ich bin ja nicht blöd: mainFrame.setResizable(false);
Dann kommt leider folgendes Ergebnis dabei heraus:

Wenn man die Bilder direkt vergleicht stellt man fest:
- Nachher ist der Frame einige Pixel höher.
- Auch die Screenshots die ich mit shift-druck (also nur das aktuelle Fenster) gemacht habe unterscheiden sich in der Pixelzahl.
- Des Weiteren verschieben sich die JPanels und deren Inhalte.
Woran könnte das liegen?
Ich kann, falls nötig, gerne auch die kompletten Sourcecodes hochladen,
wird dann nur viel Arbeit sein, alles zu analysieren...
Danke schon mal!
wieder einmal ist ein kleines Problem aufgetaucht, auf das ich keine Lösung fand...
für mein Derzeitiges OCR-Projekt lade ich ein Bild als Hintergrund in ein ImagePanel.
Dieses ImagePanel befindet sich in einem JFrame. (Neben 2 weiteren, normalen JPanels)
Klasse ImagePanel (auf das nötigste beschränkt:
Java:
public ImagePanel{
public ImagePanel(int width, int height, BufferedImage image, GUI gui) {
if(image != null) {this.image = resizeThumb(image);}
this.width = width;
this.height = height;
this.gui = gui;
this.addMouseMotionListener(this);
this.addMouseListener(this);
this.setFocusable(true);
gui.mainFrame.addKeyListener(this);
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
if (image != null) {
g.setColor(Settings.CELLCOLOR);
g.drawImage(image, 0, 0, width, height, this);
for(int i = 0; i < rectangles.length; i++) {
g.drawRect( (int)rectangles[i].getX(), (int)rectangles[i].getY(), (int)rectangles[i].getWidth(), (int)rectangles[i].getHeight());
}
}
}
}
Das ganze sieht dann so aus:

Nun ist mir aufgefallen, dass mein JFrame (also mein komplettes GUI) zwar eine feste Größe hat (das war so vorgegeben), diese jedoch veränderbar ist.
Klar, ich bin ja nicht blöd: mainFrame.setResizable(false);
Dann kommt leider folgendes Ergebnis dabei heraus:

Wenn man die Bilder direkt vergleicht stellt man fest:
- Nachher ist der Frame einige Pixel höher.
- Auch die Screenshots die ich mit shift-druck (also nur das aktuelle Fenster) gemacht habe unterscheiden sich in der Pixelzahl.
- Des Weiteren verschieben sich die JPanels und deren Inhalte.
Woran könnte das liegen?
Ich kann, falls nötig, gerne auch die kompletten Sourcecodes hochladen,
wird dann nur viel Arbeit sein, alles zu analysieren...
Danke schon mal!