tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
365
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    lam_tr lam_tr ist offline Rookie
    Registriert seit
    Nov 2009
    Beiträge
    8
    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
     

  2. #2
    Avatar von Vincentius
    Vincentius Vincentius ist offline Mitglied Brokat
    Registriert seit
    Sep 2004
    Ort
    Stuttgart
    Beiträge
    295
    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

  1. Erstellung eines Koordinatensystems
    Von lam_tr im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 5
    Letzter Beitrag: 11.03.10, 13:58
  2. Erstellung eines Threads in VB6
    Von Wechselrichter im Forum Visual Basic 6.0
    Antworten: 11
    Letzter Beitrag: 19.04.07, 16:02
  3. Erstellung eines Logos
    Von Thomas_Jung im Forum Creative Lounge
    Antworten: 0
    Letzter Beitrag: 16.02.07, 19:24
  4. Erstellung eines Magazins
    Von jaseen im Forum Creative Lounge
    Antworten: 4
    Letzter Beitrag: 03.06.06, 22:35
  5. erstellung eines wallpapers
    Von nitro0815 im Forum Photoshop
    Antworten: 5
    Letzter Beitrag: 12.04.05, 23:30