ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
365
365
EMPFEHLEN
-
Hallo zusammen,
ich möchte gern einen ImageButton erstellen, bei der wenn man auf das Bild geht, dass eine Umrandung des Bildes mit einen Leuchteffekt versehen wird.
Un weiter soll ein Listener ausgelöst werden wenn ich Rechte Maustaste betätige. Mit Mouselistener könn ich es zwar machen, aber dann muss ich es irgendwie auf eine Maustaste beschränken, da man mit links und rechts klicken kann, damit der Listener ausgelöst wird.
Gruss Lam
-
11.03.10 15:43 #2
Hallo,
zuerst würde ich mir zwei Images anlegen: ein "default"-Image und eins für MouseOver. An den Button kannst du dann ein Paar Listener anhängen, die dann bei MouseOver bzw. bei MouseOut das entsprechende Image setzen.
Für die rechte Maustaste hängst du einfach einen MouseDown-Listener an, und prüfst, welche Maustaste gedrückt wurde (siehe Code-Beispiel).
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
import org.eclipse.swt.SWT; import org.eclipse.swt.custom.CLabel; import org.eclipse.swt.graphics.Image; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Event; import org.eclipse.swt.widgets.Listener; import org.eclipse.swt.widgets.Shell; public class ImageButtonTest { public static void main( String[] args ) { Display display = new Display(); Shell shell = new Shell( display ); shell.setSize( 300, 200 ); shell.setLayout( new GridLayout() ); final Image defaultIcon = new Image( display, "icons/default_icon.gif" ); final Image hoverIcon = new Image( display, "icons/hover_icon.gif" ); final CLabel button = new CLabel( shell, SWT.SHADOW_OUT ); button.setImage( defaultIcon ); button.addListener( SWT.MouseEnter, new Listener() { public void handleEvent( Event e ) { button.setImage( hoverIcon ); } } ); button.addListener( SWT.MouseExit, new Listener() { public void handleEvent( Event e ) { button.setImage( defaultIcon ); } } ); button.addListener( SWT.MouseDown, new Listener() { public void handleEvent( Event event ) { if ( event.button == 3 ) { System.out.println( "rechte Maustaste wurde gedrueckt" ); } } } ); shell.open(); while ( !shell.isDisposed() ) { if ( !display.readAndDispatch() ) { display.sleep(); } } display.dispose(); } }
Grüße
Vincent"Any sufficiently advanced technology is indistinguishable from magic." Arthur C. Clarke.
Ähnliche Themen
-
Erstellung eines Koordinatensystems
Von lam_tr im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 5Letzter Beitrag: 11.03.10, 13:58 -
Erstellung eines Threads in VB6
Von Wechselrichter im Forum Visual Basic 6.0Antworten: 11Letzter Beitrag: 19.04.07, 16:02 -
Erstellung eines Logos
Von Thomas_Jung im Forum Creative LoungeAntworten: 0Letzter Beitrag: 16.02.07, 19:24 -
Erstellung eines Magazins
Von jaseen im Forum Creative LoungeAntworten: 4Letzter Beitrag: 03.06.06, 22:35 -
erstellung eines wallpapers
Von nitro0815 im Forum PhotoshopAntworten: 5Letzter Beitrag: 12.04.05, 23:30





Zitieren
Login





