samma
Grünschnabel
Hallo Zusammen,
habe hier ein (wahrscheinlich nur kleines) Problem mit dem Wechseln von Bildern in SWT unter Windows (auf dem Mac läufts, dummerweise liefer ich in Windows aus... :suspekt: ):
ich gebe ein Bild in einer Canvas aus, der wechsel klappt auch beim ersten Mal. Bei weiteren Durchläufen der Schleife klappts leider nicht mehr - das PaintEvent wird nicht mehr erzeugt. Ich kanns mir nicht erklären, weil es auf dem Mac läuft. Ist das ein Windows-spezifisches Problem?
Ich danke euch für die Hilfe
samma
habe hier ein (wahrscheinlich nur kleines) Problem mit dem Wechseln von Bildern in SWT unter Windows (auf dem Mac läufts, dummerweise liefer ich in Windows aus... :suspekt: ):
ich gebe ein Bild in einer Canvas aus, der wechsel klappt auch beim ersten Mal. Bei weiteren Durchläufen der Schleife klappts leider nicht mehr - das PaintEvent wird nicht mehr erzeugt. Ich kanns mir nicht erklären, weil es auf dem Mac läuft. Ist das ein Windows-spezifisches Problem?
Ich danke euch für die Hilfe
samma
Code:
// denkt euch eine Schleife um das Codebeispiel.
img = getImage();
Rectangle rect = img.getBounds();
canvas = new Canvas(getShell(),SWT.NO_REDRAW_RESIZE);
canvas.setBounds(rect);
canvas.setBackground(Screen.GREEN);
canvas.setBounds(0, 00, rect.width, rect.height);
GC gc = null;
gc = new GC(img);
gcs.add(gc);
canvas.addPaintListener (new PaintListener () {
public void paintControl (PaintEvent e) {
e.gc.drawImage (img, 0, 0);
}
});
// ... später (Timer nach x sek) Austausch des Bildes durch:
img = temp.getImage();
if(!(canvas == null) && !canvas.isDisposed()){
canvas.redraw();
}