• Login
  • Register
  • Zoek
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • Filebase Entry
  • More Options

ICTscripters

Dé plek voor IT

Dé plek voor IT

Login

Geavanceerde opties
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Home
  2. Forum
    1. Alle berichten
    2. Recente activiteiten
  3. ICT Nieuws
  4. Blog
  5. Marktplaats
    1. Werk
    2. Advertenties
    3. Domeinnamen
    4. Websites
    5. Design & lay-outs
    6. Scripts
    7. Overige
  6. Design
  7. Leden
    1. Actieve bezoekers
    2. Team
    3. Leden zoeken
  8. Downloads
  9. Goedkope domeinnamen
  1. Dé plek voor IT - ICTscripters
  2. Forum
  3. Scripting & programmeren
  4. Overige

Forum

  • Beta-testers gezocht voor Crypto-oefenplatform

    Syntax 29 januari 2026 om 16:11
  • Na 15 jaar terug van weggeweest: iCriminals.nl is terug (BETA)!

    Syntax 19 januari 2026 om 09:34
  • Developer Gezocht

    Mikevdk 10 januari 2026 om 18:57
  • Op zoek naar de legends

    Syntax 5 januari 2026 om 13:50
  • [FREE] WeFact Hosting module

    Jeroen.G 13 oktober 2025 om 14:09
  • Help testers nodig voor android app Urgent

    urgentotservices 26 september 2025 om 10:21
  • Versio vervanger

    Jeroen.G 25 augustus 2025 om 15:56
  • Afspraken systeem met planbeperking

    Lijno 1 augustus 2025 om 23:04

Marktplaats

  • 321 Nieuwe Domeinnamen December 2025

    shiga 1 januari 2026 om 10:26
  • Meerdere mafia game template te koop

    Syntax 26 december 2025 om 00:07
  • Van een pixelige afbeelding naar een strakke, moderne website

    Syntax 21 december 2025 om 17:05

Java probleem

  • darkvirus
  • 9 april 2010 om 18:48
  • darkvirus
    Beginner
    Berichten
    4
    • 9 april 2010 om 18:48
    • #1

    Hey CPers,

    Ik ben bezig met het maken van een MVC gebasseerde Java applet (niet te verwarren met Javascript).

    Op de een of andere manier wil mijn script geen image drawen (Slechte zin, I know). Heeft iemand enig idee wat ik hier fout doe?

    Code:

    PHP
    package MyProject;
    
    
    import java.awt.Color;
    import java.awt.Graphics;
    import java.awt.Graphics2D;
    import java.awt.Image;
    import java.awt.image.BufferedImage;
    import java.awt.image.ImageObserver;
    import java.awt.Toolkit;
    
    
    import javax.swing.ImageIcon;
    import javax.swing.JApplet;
    
    
    public class View extends JApplet {
    	private BufferedImage buffer;
    	private Graphics draw;
    	
    	Entity player = new Entity(20, 20, loadImage("player.png"));
    	
    	public View(){
    		setIgnoreRepaint(true);
            setFocusable(true);
    		start();
    	}
    	
    	public void init() {
    		System.out.println("Check");
    		buffer = new BufferedImage(800,600,BufferedImage.TYPE_INT_RGB);
    	}
    	
    	public void start() { 
    		init();
    		while(true){
    			try
        	    {
    				drawBuffer();
    				drawScreen();
    				Thread.sleep(15);
        	    }
        	    catch(Exception e)
        	    {
        	        e.printStackTrace();
        	    }
    			
    		}
    	}
    	
    	public void stop() { }
    	
    	public void destroy() { }
    	
    	public void run () {
    
    
    	}
    
    
        private Image loadImage(String fileName) {
        	System.out.println("LoadImage");
            return new ImageIcon(fileName).getImage();
        }
    	
    	public void drawBuffer(){
    		Graphics2D b = buffer.createGraphics();
            b.setColor(Color.black);
            b.fillRect(0,0,800,600);
            ImageObserver paintingChild = null;
            b.drawImage(player.getImage(), player.getX(), player.getY(), paintingChild);
            b.dispose();
    	}
    	
    	public void drawScreen () {
    		Graphics2D g = (Graphics2D)this.getGraphics();
        	g.drawImage(buffer,0,0,this);
        	Toolkit.getDefaultToolkit().sync();
        	g.dispose();
    	}
    	
    	public void update (Graphics g)
    	{
    
    
    	}
    }
    Toon Meer

    Dit is de foutmelding:
    java.lang.NullPointerException
    at MyProject.View.drawScreen(View.java:72)
    at MyProject.View.start(View.java:37)
    at MyProject.View.<init>(View.java:23)
    at MyProject.App.main(App.java:7)

    Hij refereert naar deze regel:

    PHP
    g.drawImage(buffer,0,0,this);

    Aangezien het een nullpointerexception is, vraagt hij dus ergens om een waarde die er niet is. Ik ga er dus vanuit dat hij de Image waarde van buffer niet kan lezen.
    Ziet iemand wat ik daar fout heb gedaan?

    Groeten, Darkvirus.

  • Spinazie
    Set sail, pirates!
    Berichten
    353
    • 9 april 2010 om 19:23
    • #2

    Best rommelige code. Waarom gebruik je niet gewoon Image? Ik werk zelf niet met BufferedImage, of whatever het mag zijn. Zelf heb ik ook wat geprutst met het weergeven van images in een simpel hoger-lager programmaatje. Je mag het gebruiken, verspreiden, verscheuren, whatever.

    PHP
    import java.applet.Applet;
    import java.awt.Button;
    import java.awt.Color;
    import java.awt.Event;
    import java.awt.Graphics;
    import java.awt.Image;
    import java.awt.TextField;
    
    
    public class HogerLager extends Applet
    {
      TextField vak;
      Button knop;
      String tekst;
      Image image;
      Boolean correctAnswer;
      int ronde;
      int keer;
      int x;
      int raadgetal;
    
    
      public HogerLager()
      {
        this.tekst = "Ik bedenk een getal. (1-100)";
    
    
        this.correctAnswer = Boolean.valueOf(false);
        this.ronde = 1; }
    
    
      public void init() {
        setBackground(Color.white);
        this.vak = new TextField(10);
        this.knop = new Button("Klik");
        add(this.vak);
        add(this.knop);
        this.raadgetal = (1 + (int)(100.0D * Math.random()));
        this.image = getImage(getCodeBase(), getParameter("background"));
      }
    
    
      public void paint(Graphics g) {
        super.paint(g);
        if (this.correctAnswer.booleanValue())
        {
          g.drawImage(this.image, 0, 0, this);
          g.setColor(Color.white);
        }
        else {
          g.setColor(Color.black); }
        g.drawString(this.tekst, 40, 100);
        this.vak.setText(null);
        this.vak.requestFocus();
      }
    
    
      public boolean action(Event e, Object o)
      {
        if (e.target == this.knop)
        {
          try
          {
            String woord = this.vak.getText();
            this.x = Integer.parseInt(woord);
          }
          catch (NumberFormatException ex)
          {
            this.tekst = "Geen correct getal!";
            repaint();
            return false;
          }
    
    
          this.keer += 1;
          if (this.x > this.raadgetal)
          {
            this.tekst = this.x + " is te hoog, probeer het nog eens.";
            this.correctAnswer = Boolean.valueOf(false);
          }
          else if (this.x < this.raadgetal)
          {
            this.tekst = this.x + " is te laag, probeer het nog eens.";
            this.correctAnswer = Boolean.valueOf(false);
          }
          else
          {
            this.tekst = this.x + " is geraden in " + this.keer + " keer";
            this.correctAnswer = Boolean.valueOf(true);
            this.ronde = (this.keer = 0);
            while (this.x == this.raadgetal)
            {
              this.raadgetal = (1 + (int)(100.0D * Math.random()));
            }
          }
        }
        repaint();
        return true;
      }
    }
    Toon Meer

    PS: Heb de class gedecompileerd, dus het kan een beetje onoverzichtelijk zijn, maar over het algemeen moet het gewoon werken.

    Totdat Stefan en Koen terug zijn van vakantie ben ik weer actief. Daarna ben ik weer weg ;)

  • darkvirus
    Beginner
    Berichten
    4
    • 9 april 2010 om 19:24
    • #3

    Spinazie
    Thx, ik zal er eens naar kijken ^^.

  • Spinazie
    Set sail, pirates!
    Berichten
    353
    • 9 april 2010 om 19:25
    • #4

    De goede staat er nu in.

    Totdat Stefan en Koen terug zijn van vakantie ben ik weer actief. Daarna ben ik weer weg ;)

Participate now!

Heb je nog geen account? Registreer je nu en word deel van onze community!

Maak een account aan Login

ICT Nieuws

  • Fijne feestdagen

    tcbhome 28 december 2025 om 13:55
  • Kritieke update voor Really Simple Security-plug-in

    K.Rens 16 november 2024 om 16:12
  • ING Nederland streeft naar ondersteuning van Google Pay tegen eind februari

    K.Rens 2 november 2024 om 16:09

Blogs

  • Functioneel ontwerp

    Dees 28 december 2014 om 12:38
  • Access Control List implementatie in PHP/MySQL - deel 1/2

    FangorN 28 december 2018 om 12:35
  • Access Control List implementatie in PHP/MySQL - deel 2/2

    FangorN 29 december 2018 om 12:37
  1. Marktplaats
  2. Design
  3. Voorwaarden
  4. Ons team
  5. Leden
  6. Geschiedenis
  7. Regels
  8. Links
  9. Privacy Policy
ICTscripters ©2005 - 2026 , goedkope hosting door DiMoWeb.com, BE0558.915.582
Sponsors: Beste kattenhotel provincie Antwerpen | Beste Zetes eid kaartlezer webshop
Style: Nexus by cls-design
Stylename
Nexus
Manufacturer
cls-design
Licence
Commercial styles
Help
Supportforum
Visit cls-design