tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
4819
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    fju fju ist offline Grünschnabel
    Registriert seit
    Dec 2004
    Beiträge
    3
    Hallo Leute
    Ich möchte verschiedene Bilder (*.jpg) unterschiedlichster Grösse (800*600, 1024*768, etc) laden und abwechslungsweise in einem Label darstellen.
    Die angezeigte Bildgrösse des Labels darf sich aber nicht verändern. Sie sollte immer (400*300) sein.

    Image bild = new Image(display, einstellungen.absoluter_Pfad + "test.jpg");

    Das Bild wird mir angezeigt, jedoch leider nur ein Ausschnitt.

    Habe es mit ImageData probiert, jedoch ohne Erfolg.

    Besten Dank

    Stefan Graf
     

  2. #2
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo Stefan!

    Versuchs mal so:
    Code :
    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    
    package de.tutorials;
     
    import java.util.HashMap;
    import java.util.Iterator;
    import java.util.Map;
     
    import org.eclipse.swt.SWT;
    import org.eclipse.swt.events.SelectionAdapter;
    import org.eclipse.swt.events.SelectionEvent;
    import org.eclipse.swt.graphics.Image;
    import org.eclipse.swt.graphics.ImageData;
    import org.eclipse.swt.layout.GridLayout;
    import org.eclipse.swt.widgets.Button;
    import org.eclipse.swt.widgets.Combo;
    import org.eclipse.swt.widgets.Display;
    import org.eclipse.swt.widgets.Label;
    import org.eclipse.swt.widgets.Shell;
     
    public class Test01 {
     
        public static void main(String[] args) {
     
            final Map cache = new HashMap();
     
            final Display display = new Display();
            final Shell shell = new Shell(display);
     
            shell.setText("Test01");
            shell.setLayout(new GridLayout(2, false));
     
            final Combo cboImgs = new Combo(shell, SWT.NONE);
            cboImgs.add("thema2_800.jpg");
            cboImgs.add("thema2_1024.jpg");
     
            Button btnAction = new Button(shell, SWT.PUSH);
            btnAction.setText("show img");
     
            final Label lblImg = new Label(shell, SWT.BORDER);
            lblImg.setSize(400, 300);
     
            btnAction.addSelectionListener(new SelectionAdapter() {
                public void widgetSelected(SelectionEvent e) {
     
                    String txt = cboImgs.getText();
                    if (txt.equals(""))
                        return;
     
                    Image img = (Image) cache.get(txt);
                    if (img == null) {
                        ImageData imgData = new ImageData("c:/imgs/" + txt);
                        imgData = imgData.scaledTo(400, 300);
                        img = new Image(display, imgData);
                        cache.put(txt, img);
                    }
                    lblImg.setImage(img);
                    shell.pack();
                }
            });
     
            shell.open();
     
            while (!shell.isDisposed()) {
                if (!display.readAndDispatch()) {
                    display.sleep();
                }
            }
     
            for (Iterator iter = cache.keySet().iterator(); iter.hasNext();) {
                Image img = (Image) cache.get(iter.next());
                img.dispose();
            }
        }
    }

    Gruß tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  3. #3
    fju fju ist offline Grünschnabel
    Registriert seit
    Dec 2004
    Beiträge
    3
    Danke für die schnelle Antwort.
    So funktioniert es prächtig.

    Super Hilfe.

    Gruss

    Stefan
     

Ähnliche Themen

  1. Grösse eines Bildes herausfinden
    Von Coldblood1985 im Forum ASP
    Antworten: 2
    Letzter Beitrag: 01.04.06, 17:15
  2. Anfänger braucht hilfe wegen grösse des Bildes
    Von solo99 im Forum Photoshop
    Antworten: 1
    Letzter Beitrag: 17.11.05, 02:36
  3. Grösse eines Bildes im Internet feststellen
    Von MondGsicht im Forum Java
    Antworten: 1
    Letzter Beitrag: 13.05.05, 12:07
  4. Antworten: 3
    Letzter Beitrag: 28.08.04, 10:22
  5. Jpg grösse ändern mit VBS
    Von stormystormy im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 31.12.03, 11:25