tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
355
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    blackrose4me blackrose4me ist offline Mitglied
    Registriert seit
    Sep 2007
    Ort
    Mannheim
    Beiträge
    19
    Guten Abend meine Lieben

    Es geht um folgendes:
    Ich möchte in meinem Java-Formular (Frame AWT) nun auch Bilder anzeigen lassen, da ich nun, da das Programm und seine Funktionen stehen, es optisch ein wenig aufbessern möchte.

    Wie man ein Bild in einem Java Frame erzeugt ist mir bewusst, das klappt auch.

    Mein Problem - so hat es sich nun rausgestellt - ist mein Panel.

    Nun wollte ich fragen ob jemand von euch mir vllt kurz helfen könnte, da ich nicht weiss, wie ich dieses Bild nun in meinem Panel anzeigen lassen kann nach längerer Ausprobiererei.

    Erstmal einen kleinen Ausschnitt aus meinen Code:
    PHP-Code:
     public Image img;

    //...oben ist code...

      
    public eingabeformular(String title)
      {
        
    super(title);
        
    addWindowListener(new WindowAdapter() {
          public 
    void windowClosing(WindowEvent evt) { System.exit(0); }
        });
        
    int frameWidth 683;
        
    int frameHeight 620;
        
    setSize(frameWidthframeHeight);
        
    Dimension d Toolkit.getDefaultToolkit().getScreenSize();
        
    int x = (d.width getSize().width) / 2;
        
    int y = (d.height getSize().height) / 2;
        
    setLocation(xy);
        
    Panel cp = new Panel(null);
        
    add(cp);

        
    Toolkit toolkit Toolkit.getDefaultToolkit();
        
    MediaTracker mt = new MediaTracker (this);
        
    img toolkit.getImage("jenny.jpg");
        
    mt.addImage(img,0);
        
        try
        {
          
    mt.waitForID(0);
        }
        catch (
    Exception e)
        {}

      
    //weiter unten ist code...
      
    }

    //ausserhalb der klasse  folgt irgendwann die Methode paint :
      
    public void paint(Graphics g){
        if(
    img != null)
        {
          
    g.drawImage (img00this.getWidth (), this.getHeight (), this);
        }
      }

     
    //weiter unten ist noch mehr code... 
    Meine Frage an euch also: Wie kann ich ein Bild im Panel cp anzeigen lassen?

    Info:
    Da ich mein 750Zeilen Code nicht völlig umschreiben möchte, wäre ich euch wirklich sehr dankbar für eine Lösung. Import Klassen sind natürlich die richtigen vorhanden, sowie die public Variable "img"
    Geändert von blackrose4me (03.12.08 um 18:13 Uhr)
     

  2. #2
    Avatar von zerix
    zerix zerix ist offline Hausmeister
    tutorials.de Moderator
    Registriert seit
    May 2005
    Beiträge
    4.335
    Hallo,

    die paint-Methode musst du beim Panel überschreiben.
    Entweder du schreibst dir eine eigene Panel-Klasse oder du machst es so
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    Panel cp = new Panel(){
     
       public void paint(Graphics g){
          if(img != null)
          {
             g.drawImage(img,0,0,this.getWidth(),this.getHeight(), this);
          }
       }
     
    };

    Der Weg mit der eigenen Klasse ist meiner Meinung nach der bessere Weg.

    MFG

    Sascha
     
    Es ist schwer Allwissend zu sein. Aber ich komme damit klar. ;-)

  3. #3
    mckruep mckruep ist offline Mitglied Silber
    Registriert seit
    Oct 2007
    Beiträge
    57
    Hey,

    und versuch mal ein revalidate() ; und repaint() ;
    Damit das Panel neu gezeichnet wird und Änderungen sichtbar werden.

    Wobei ich es auch mit dem Überschreiben machen würde.

    Gruß
     

Ähnliche Themen

  1. Bild URL aus XML anzeigen lassen?!
    Von warstel im Forum Flash Plattform
    Antworten: 5
    Letzter Beitrag: 17.02.10, 16:01
  2. Webcam auf Panel anzeigen und Bild/Video Speichern DirectShowLib
    Von Topia im Forum .NET Grafik und Sound
    Antworten: 1
    Letzter Beitrag: 16.12.08, 11:53
  3. Bild anzeigen lassen?
    Von tesarolle im Forum PHP
    Antworten: 2
    Letzter Beitrag: 13.05.05, 14:12
  4. Grafiken in einem Panel anzeigen lassen
    Von haggard im Forum Swing, Java2D/3D, SWT, JFace
    Antworten: 7
    Letzter Beitrag: 04.04.04, 18:56
  5. MFC: Bild anzeigen lassen (jpg)
    Von biba im Forum C/C++
    Antworten: 3
    Letzter Beitrag: 25.07.03, 22:02