Billedbehandling SWT doublebuffering
Jeg har et problem med at det billede jeg sætter ind i min applikation blinker når jeg gentegner canvaset.private ImageData grafenData;
private Image grafen;
final Display disp = composite.getDisplay();
grafenData = new ImageData("c:\\temp\\speedo4_2.png");
grafen = new Image(disp,grafenData);
canvas.addPaintListener(new PaintListener() {
public void paintControl(PaintEvent e) {
if (!isKilled) {
grafen = new Image(disp,grafenData);
Rectangle temp = grafen.getBounds();
canvas.setBounds(grafxpos,grafypos,temp.width,temp.height);
e.gc.drawImage(grafen,0,0);
.
.
}
canvas.addKeyListener(new KeyListener(){
public void keyPressed(KeyEvent evt) {
if (evt.character == 'e')
{
System.out.println("trykket på e");
valueOfGraf += 0.1;
canvas.redraw();
}
}
Er der en måde at lave en form for doublebuffering eller noget lignende så det ikke er synlig for brugeren at billedet bliver tegnet på ny?
