Hallo,
Ich habe eine Componente, die Composite extended.
in dieser componente will ich mir ein bild generieren, und dieses anschließend auch auf die composite zeichnen.
dazu habe ich eine zweidimensionale matrix (globale var) (mit den bilddaten)
leider hab ich das erste problem schon beim erstellen des Images
und zwar folgendes:
(mir ist klar warum das nicht geht)
Invalid thread access - ist mir klar, da ich ja new Dispay anwende
ergo mach ich das mit dem dispay der componente!
nun hätte ich mir erwartet, dass das klappt, jedoch auch hier laufe ich wieder in eine exception:
warum?
Ich habe eine Componente, die Composite extended.
in dieser componente will ich mir ein bild generieren, und dieses anschließend auch auf die composite zeichnen.
dazu habe ich eine zweidimensionale matrix (globale var) (mit den bilddaten)
leider hab ich das erste problem schon beim erstellen des Images
und zwar folgendes:
(mir ist klar warum das nicht geht)
Code:
private Image matrix2image(int multiplyer) {
int size = matrix.length * multiplyer;
Image img = new Image(new Display(), size, size);
return img;
}
ergo mach ich das mit dem dispay der componente!
Code:
private Image matrix2image(int multiplyer) {
int size = matrix.length * multiplyer;
Image img = new Image(getDisplay(), size, size);
return img;
}
Code:
java.lang.IllegalArgumentException: Argument not valid
at org.eclipse.swt.SWT.error(SWT.java:3865)
at org.eclipse.swt.SWT.error(SWT.java:3799)
at org.eclipse.swt.SWT.error(SWT.java:3770)
at org.eclipse.swt.graphics.Image.init(Image.java:1562)
at org.eclipse.swt.graphics.Image.<init>(Image.java:177)
at ...matrix2image(MyCode.java:64)