Moin,
ich versuche momentan ein kleines Spiel mit Kreisen zu entwickeln ( PuzzleBubble ).
Dabei sollen Kreise aneinander "haften".
Ich möchte allerdings nicht auf die Zeichenfertigkeiten von SWT zurückgreifen, sondern eine Bilder für Kugeln, Level, etc. importieren und nutzen.
Mein jetziger Verusch nimmt einfach 2 Kugeln und legt sie auf Labels. Dazu gebe ich eine Transparente Hintergrundfarbe an. Außerdem färbe ich noch den hintergrund der Shell ein.
Dabei entstehen 2 Probleme :
1. Die "Transparenz" passt sich nicht der Hintergrundfarbe an
2. Die "Transparenz" liegt über dem 2. Label, sodass sie den 2. Kreis überzeichnet
Wie kann ich das ändern ? Gibt es eine alternative zu den Labels ?
Hier mal den Code und ein Bild :
ich versuche momentan ein kleines Spiel mit Kreisen zu entwickeln ( PuzzleBubble ).
Dabei sollen Kreise aneinander "haften".
Ich möchte allerdings nicht auf die Zeichenfertigkeiten von SWT zurückgreifen, sondern eine Bilder für Kugeln, Level, etc. importieren und nutzen.
Mein jetziger Verusch nimmt einfach 2 Kugeln und legt sie auf Labels. Dazu gebe ich eine Transparente Hintergrundfarbe an. Außerdem färbe ich noch den hintergrund der Shell ein.
Dabei entstehen 2 Probleme :
1. Die "Transparenz" passt sich nicht der Hintergrundfarbe an
2. Die "Transparenz" liegt über dem 2. Label, sodass sie den 2. Kreis überzeichnet
Wie kann ich das ändern ? Gibt es eine alternative zu den Labels ?
Hier mal den Code und ein Bild :
Code:
Shell shell = new Shell(display);
shell.setText("erster TEST") ;
shell.setSize(500,500) ;
shell.setBackground(new Color ( display , 20,20,20));
ImageData ideaData = new ImageData( Snippet1.class.getClass().getResourceAsStream("/"+Bilder_Ordner+"/char.bmp"));
int whitePixel = ideaData.palette.getPixel(new RGB(255,0,255));
ideaData.transparentPixel = whitePixel;
Image transparentIdeaImage = new Image(display,ideaData);
label = new Label( shell , SWT.CENTER ) ;
label.setBounds(10,10,100,100) ;
label.setImage( transparentIdeaImage ) ;
ImageData ideaData2 = new ImageData( Snippet1.class.getClass().getResourceAsStream("/"+Bilder_Ordner+"/char.bmp"));
int whitePixel2 = ideaData.palette.getPixel(new RGB(255,0,255));
ideaData.transparentPixel = whitePixel;
Image transparentIdeaImage2 = new Image(display,ideaData);
label = new Label( shell , SWT.CENTER ) ;
label.setText("HALLE") ;
label.setBounds(20,20,100,100) ;
label.setImage( transparentIdeaImage2 ) ;