Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: Gif-figuur toevoegen aan panel in Java  (gelezen 2761 keer)

0 leden en 1 gast bekijken dit topic.

Offline Joachim

  • Volledig lid
  • **
  • Berichten: 161
  • "I think computer will always crash"
Gif-figuur toevoegen aan panel in Java
« Gepost op: 26 augustus 2003, 20:30:57 »
Hallo,
ik probeer in java een .gif figuur toe te voegen aan een pannel, maar er treed steeds een foutmelding op.

Dit is de code van het bestand Bitmap.java dat ik kan compileren naar Bitmap.class

import java.awt.*;
public class Bitmap extends Canvas{
                                   private Image afbeelding;
                                   public Bitmap(String bestand){
                                                                 afbeelding = getToolkit().getImage(bestand);
                                                          MediaTracker mt = new MediaTracker(this);

                                                       // MediaTracker aan afbeelding koppelen
                                                         mt.addImage(afbeelding, 0);

                                                                 try {
                                                  //Wachten tot de image volledig geladen is
                                                  mt.waitForAll();
                                                       } catch (InterruptedException e) { /* doe niets */ }

                                   }
                                   public void paint(Graphics g){
                                                                   if(afbeelding != null){
                                                                                            g.drawImage(afbeelding, 1, 1, this);
                                                                   }
                                   }

}


IN het volgende bericht staat de code van het eigenlijke programma, rekentrainer.java
Dit bestand kan ik NIET compileren naar RekenTrainer.class, er treeddt dan steeds een foutmelding op
"rekentrainer.java:159: cannot resolve symbol
symbol  : class Bitmap
location: class RekenTrainer
                                                                pn.add(new Bitma
p("blanco.gif"));
                                                                           ^
1 error"

(voor de code, zie volgend bericht...)
Win XP (home) - 3,2 Ghz Intel, hyperthreading - 2x512 Mb RAM pc400 - p4c800 Deluxe, 8x AGP - 6*usb 2.0 - firewire - RADEON 9200 - TFT 17" AOC - IE6 - ADSL (skynet) - AVG antivirus - Sygate firewall

Offline Joachim

  • Volledig lid
  • **
  • Berichten: 161
  • "I think computer will always crash"
Re:Gif-figuur toevoegen aan panel in Java
« Reactie #1 Gepost op: 26 augustus 2003, 20:31:40 »
(vervolg:    )
Code van bestand rekentrainer.java

import java.awt.*;
import java.awt.event.*;

class RekenTrainer extends Frame {
                                  Panel pc, pn, pc1, pc2;
                                  GridBagConstraints c;
                                  TextField Field1, Field2, Field3, Field4, Field5, Field6, Field7, Field8, Field9, Field10;
                                  Label Label1, Label2, Label3, Label4, Label5, Label6, Label7, Label8, Label9, Label10;
                                  MenuBar mb;
                                  Menu m1, m2, m21, m22;
                                  MenuItem mi_inloggen, mi_uitloggen, mis_makkelijk, mis_gemiddeld, mis_moeilijk, mis_zeermoeilijk, mis_tafels, mis_hoofdrekenen, mis_meten;
                                  public RekenTrainer() {
                                                                addWindowListener( new WindowAdapter() {
                                                                                         public void windowClosing(WindowEvent e) {
                                                                                    System.exit(0);
                                                                                         }
                                                                });
                                                                setBackground(Color.lightGray);
                                                                setTitle("Rekentrainer");
                                                                 mb = new MenuBar();
                                                                m1 = new Menu("Bestand");
                                                                m1.add( mi_inloggen = new MenuItem("Inloggen"));
                                                                m1.add( mi_uitloggen = new MenuItem("Uitloggen"));
                                                                m1.addSeparator();
                                                                m2 = new Menu("Opties");
                                                                m2.add( m21 = new Menu("Niveau"));
                                                                m21.add( mis_makkelijk = new MenuItem("1. Makkelijk"));
                                                                m21.add( mis_gemiddeld = new MenuItem("2. Gemiddeld"));
                                                                m21.add( mis_moeilijk = new MenuItem("3. Moeilijk"));
                                                                m21.add( mis_zeermoeilijk = new MenuItem("4. Zeer moeilijk"));
                                                                m2.add( m22 = new Menu("Categorie"));
                                                                m22.add( mis_tafels = new MenuItem("De Tafels"));
                                                                m22.add( mis_hoofdrekenen = new MenuItem("Hoofdrekenen"));
                                                                m22.add( mis_meten = new MenuItem("Meten"));
                                                                mb.add( m1 );
                                                                mb.add( m2 );
                                                                setMenuBar(mb);
                                                                Label1 = new Label("");
                                                                Label2 = new Label("");
                                                                Label3 = new Label("");
                                                                Label4 = new Label("");
                                                                Label5 = new Label("");
                                                                Label6 = new Label("");
                                                                Label7 = new Label("");
                                                                Label8 = new Label("");
                                                                Label9 = new Label("");
                                                                Label10 = new Label("");
                                                                Field1 = new TextField();
                                                                Field2 = new TextField();
                                                                Field3 = new TextField();
                                                                Field4 = new TextField();
                                                                Field5 = new TextField();
                                                                Field6 = new TextField();
                                                                Field7 = new TextField();
                                                                Field8 = new TextField();
                                                                Field9 = new TextField();
                                                                Field10 = new TextField();
                                                                Panel pc1 = new Panel(new GridLayout(0,1));
                                                                pc1.add( Label1 );
                                                                pc1.add( Label2 );
                                                                pc1.add( Label3 );
                                                                pc1.add( Label4 );
                                                                pc1.add( Label5 );
                                                                pc1.add( Label6 );
                                                                pc1.add( Label7 );
                                                                pc1.add( Label8 );
                                                                pc1.add( Label9 );
                                                                pc1.add( Label10 );
                                                                Panel pc2 = new Panel(new GridLayout(0,1));
                                                                pc2.add( Field1 );
                                                                pc2.add( Field2 );
                                                                pc2.add( Field3 );
                                                                pc2.add( Field4 );
                                                                pc2.add( Field5 );
                                                                pc2.add( Field6 );
                                                                pc2.add( Field7 );
                                                                pc2.add( Field8 );
                                                                pc2.add( Field9 );
                                                                pc2.add( Field10 );
                                                                Panel pc = new Panel(new FlowLayout());
                                                                pc.add( pc1 );
                                                                pc.add( pc2 );
                                                                Panel pn = new Panel(new FlowLayout());
                                                                add(pc, BorderLayout.CENTER);
                                                              pn.add(new Bitmap("blanco.gif"));
                                                                add(pn, BorderLayout.NORTH);

                                                                pack();
                                                                setVisible(true);



                                  }

                                  public static void main( String[] args) {
                                                                             RekenTrainer prog = new RekenTrainer();
                                  }
}

Kan iemand me helpen??
alvast hartelijk bedankt!!

Win XP (home) - 3,2 Ghz Intel, hyperthreading - 2x512 Mb RAM pc400 - p4c800 Deluxe, 8x AGP - 6*usb 2.0 - firewire - RADEON 9200 - TFT 17" AOC - IE6 - ADSL (skynet) - AVG antivirus - Sygate firewall

Offline Yakko

  • Ambassadeur
  • *****
  • Berichten: 1.943
Re:Gif-figuur toevoegen aan panel in Java
« Reactie #2 Gepost op: 26 augustus 2003, 21:20:22 »
bekijk in de api eens paintIcon

vb :

static final Icon fig= new ImageIcon("blank.gif");

en dan :

fig.paintIcon(this,g,48*kolom,48*rij);

this wordt hier waarschijnlijk pn

Waar haal je eigenlijk de klasse Bitmap vandaan ? Ik vind die niet terug in de api's
Gelieve uw systeemgegevens in te vullen. Klik HIER voor meer informatie.

Offline Joachim

  • Volledig lid
  • **
  • Berichten: 161
  • "I think computer will always crash"
Re:Gif-figuur toevoegen aan panel in Java
« Reactie #3 Gepost op: 26 augustus 2003, 21:46:32 »
die klasse heb ik zelf gemaakt (zie post 1)

bedankt voor je uitleg,.... maarreuh... ik begrijp er nog niet zoveel van... ik heb wat gezocht in de api's, en ook painticon en imageicon teruggevonden, maar ik krijg die foutmeldingen niet weg.

kan je me nog wat meer op weg helpen?
dit is wat ik ver van gemaakt heb:

"
//vorige code

                                                                ImageIcon fig = new ImageIcon("blank.gif");
                                                                fig.paintIcon(pn,Graphics g,48,48);

//volgende code
"


ik krijg steeds de foutmelding "cannot resolve symbol on line...."
de regels bevatten de bovenstaande code

hellup pleassssss  ??? :'(
Win XP (home) - 3,2 Ghz Intel, hyperthreading - 2x512 Mb RAM pc400 - p4c800 Deluxe, 8x AGP - 6*usb 2.0 - firewire - RADEON 9200 - TFT 17" AOC - IE6 - ADSL (skynet) - AVG antivirus - Sygate firewall

Offline Yakko

  • Ambassadeur
  • *****
  • Berichten: 1.943
Re:Gif-figuur toevoegen aan panel in Java
« Reactie #4 Gepost op: 26 augustus 2003, 22:03:45 »
om Icon te gebruiken mag je niet vergeten

import javax.swing.*;

te doen.

Die klasse Bitmap in de eerste post had ik over het hoofd gezien.
Staan beide bestanden in dezelfde directory ?
Gelieve uw systeemgegevens in te vullen. Klik HIER voor meer informatie.

Offline Joachim

  • Volledig lid
  • **
  • Berichten: 161
  • "I think computer will always crash"
Re:Gif-figuur toevoegen aan panel in Java
« Reactie #5 Gepost op: 27 augustus 2003, 11:39:02 »
ok, ik geraakt er lanzaam aan...... ;-)

ik kan het progr al compileren zonder f outen, maar uitvoeren nog niet.
"Nullpointer exeption..."
volgens mij komt dat doordat g eigenlijk geen waarde heeft.
Mss kan je me nog eens helpen met uw oneindige wijsheid? ???
De huidige code is nu:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class RekenTrainer extends Frame {

                                  Panel pc, pn, pc1, pc2;

                                  GridBagConstraints c;
                                  Graphics g;

                                  TextField Field1, Field2, Field3, Field4, Field5, Field6, Field7, Field8, Field9, Field10;
                                  Label Label1, Label2, Label3, Label4, Label5, Label6, Label7, Label8, Label9, Label10;
                                  MenuBar mb;
                                  Menu m1, m2, m21, m22;
                                  MenuItem mi_inloggen, mi_uitloggen, mis_makkelijk, mis_gemiddeld, mis_moeilijk, mis_zeermoeilijk, mis_tafels, mis_hoofdrekenen, mis_meten;
                                  public RekenTrainer() {
                                                                addWindowListener( new WindowAdapter() {
                                                                                         public void windowClosing(WindowEvent e) {
                                                                                    System.exit(0);
                                                                                         }
                                                                });
                                                                setBackground(Color.lightGray);
                                                                setTitle("Rekentrainer");

                                                                mb = new MenuBar();
                                                                m1 = new Menu("Bestand");
                                                                m1.add( mi_inloggen = new MenuItem("Inloggen"));
                                                                m1.add( mi_uitloggen = new MenuItem("Uitloggen"));
                                                                m1.addSeparator();
                                                                m2 = new Menu("Opties");
                                                                m2.add( m21 = new Menu("Niveau"));
                                                                m21.add( mis_makkelijk = new MenuItem("1. Makkelijk"));
                                                                m21.add( mis_gemiddeld = new MenuItem("2. Gemiddeld"));
                                                                m21.add( mis_moeilijk = new MenuItem("3. Moeilijk"));
                                                                m21.add( mis_zeermoeilijk = new MenuItem("4. Zeer moeilijk"));
                                                                m2.add( m22 = new Menu("Categorie"));
                                                                m22.add( mis_tafels = new MenuItem("De Tafels"));
                                                                m22.add( mis_hoofdrekenen = new MenuItem("Hoofdrekenen"));
                                                                m22.add( mis_meten = new MenuItem("Meten"));
                                                                mb.add( m1 );
                                                                mb.add( m2 );
                                                                setMenuBar(mb);
                                                                Label1 = new Label("");
                                                                Label2 = new Label("");
                                                                Label3 = new Label("");
                                                                Label4 = new Label("");
                                                                Label5 = new Label("");
                                                                Label6 = new Label("");
                                                                Label7 = new Label("");
                                                                Label8 = new Label("");
                                                                Label9 = new Label("");
                                                                Label10 = new Label("");
                                                                Field1 = new TextField();
                                                                Field2 = new TextField();
                                                                Field3 = new TextField();
                                                                Field4 = new TextField();
                                                                Field5 = new TextField();
                                                                Field6 = new TextField();
                                                                Field7 = new TextField();
                                                                Field8 = new TextField();
                                                                Field9 = new TextField();
                                                                Field10 = new TextField();
                                                                Panel pc1 = new Panel(new GridLayout(0,1));
                                                                pc1.add( Label1 );
                                                                pc1.add( Label2 );
                                                                pc1.add( Label3 );
                                                                pc1.add( Label4 );
                                                                pc1.add( Label5 );
                                                                pc1.add( Label6 );
                                                                pc1.add( Label7 );
                                                                pc1.add( Label8 );
                                                                pc1.add( Label9 );
                                                                pc1.add( Label10 );
                                                                Panel pc2 = new Panel(new GridLayout(0,1));
                                                                pc2.add( Field1 );
                                                                pc2.add( Field2 );
                                                                pc2.add( Field3 );
                                                                pc2.add( Field4 );
                                                                pc2.add( Field5 );
                                                                pc2.add( Field6 );
                                                                pc2.add( Field7 );
                                                                pc2.add( Field8 );
                                                                pc2.add( Field9 );
                                                                pc2.add( Field10 );
                                                                Panel pc = new Panel(new FlowLayout());
                                                                pc.add( pc1 );
                                                                pc.add( pc2 );
                                                             
                                                                Panel pn = new Panel(new FlowLayout());
                                                                add(pc, BorderLayout.CENTER);
                                                                //BitmapZoom afbeelding = new BitmapZoom("blanco.gif");

                                                                ImageIcon fig = new ImageIcon("blank.gif");
                                                                fig.paintIcon(pn,g,48,48);
                                                                                                                                add(pn, BorderLayout.NORTH);    
                                                                pack();
                                                                setVisible(true);



                                  }

                                  public static void main( String[] args) {
                                                                             RekenTrainer prog = new RekenTrainer();
                                  }
}

alvast nogmaals bedankt

weet nog iemand waar de fout kan zitten ? tis waarschijnlijk iets met die "g"....
Win XP (home) - 3,2 Ghz Intel, hyperthreading - 2x512 Mb RAM pc400 - p4c800 Deluxe, 8x AGP - 6*usb 2.0 - firewire - RADEON 9200 - TFT 17" AOC - IE6 - ADSL (skynet) - AVG antivirus - Sygate firewall

 


www.combell.com