Quantcast
Channel: Programming Forums
Viewing all articles
Browse latest Browse all 51036

Applet problem

$
0
0
I am trying to run a applet for a program and everytime I do I get this error message.
java.lang.reflect.InvocationTargetException

In the java console the only thing I get is this

Java Plug-in 10.11.2.21
Using JRE version 1.7.0_11-b21 Java HotSpot™ Client VM
User home directory = C:\Users\Optemus
----------------------------------------------------
c: clear console window
f: finalize objects on finalization queue
g: garbage collect
h: display this help message
l: dump classloader list
m: print memory usage
o: trigger logging
q: hide console
r: reload policy configuration
s: dump system and deployment properties
t: dump thread list
v: dump thread stack
x: clear classloader cache
0-5: set trace level to <n>
----------------------------------------------------

It works when I run it in eclipse and when I run it in JGrasp so I am guessing its my html maybe? But also I used the same code for my other applet and it works fine, so I dont see why the html would be bad.... Not sure which it is lol.

html code
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta name="generator" content="CoffeeCup HTML Editor (www.coffeecup.com)">
    <meta name="description" content="">
    <meta name="keywords" content="">
    <title>MapEditor</title>
    
    <style type="text/css">
    &lt!--
    body {
      color:#000000;
      background-color:#339966;
    }
    a  { color:#0000FF; }
    a:visited { color:#800080; }
    a:hover { color:#008000; }
    a:active { color:#FF0000; }
    -->
    </style>
    &lt!--[if IE]>
    <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
  </head>
  <body>
  <p> Map editor for a game, the game is a class project due soon took me a few hours
  to code this, prob crap code but thought I would upload it anyways. Dont judge me! Haha</p>
  
 &lt!--<applet     codebase = ./Projects>
  			  code   = "MapEditor.class">
              width  = 760 >
              height = 600>
        <param name  = SIZE value = 8>
        Why can't you run applets?
  </applet>-->
  <applet width="400" height="200" codebase="./Projects" code="MapEditor.class">
  


	<p> Source Files Non Applet <a href = "./DownloadCode/MapEditor.zip">MapEditor</a></p>
  </body>
</html>


code for the program


import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.Timer;

import java.applet.*;
import java.net.*;
import javax.swing.JApplet;

public class MapEditor extends JApplet implements ActionListener, KeyListener{
	TilePanel tilePanel;
	DrawPanel panel;
	JMenuItem New, Save, Open;
	Timer timer;
	JButton button, fill, P, B, M;
	
	/*public static void main(String[] args){
		new MapEditor();
	}*/
	
	
	public MapEditor(){
		setFocusTraversalKeysEnabled(false);
		addKeyListener(this);
		
		JMenuBar menuBar = new JMenuBar();
		
		JMenu menu = new JMenu("File");
		button = new JButton("TogKey");
		fill = new JButton("Fill");
		P = new JButton("P");
		B = new JButton("B");
		M = new JButton("M");
		
		menuBar.add(menu);
		menuBar.add(button);
		menuBar.add(fill);
		menuBar.add(P);
		menuBar.add(B)/>/>;
		menuBar.add(M);
		
		Open = new JMenuItem("Open");
		Save = new JMenuItem("Save");
		New = new JMenuItem("New");
		
		New.addActionListener(this);
		Open.addActionListener(this);
		Save.addActionListener(this);
		button.addActionListener(this);
		fill.addActionListener(this);
		P.addActionListener(this);
		B.addActionListener(this);
		M.addActionListener(this);
		
		menu.add(New);
		menu.add(Open);
		menu.add(Save);
		
		setJMenuBar(menuBar);
		
		panel = new DrawPanel();
		tilePanel = new TilePanel();
		
		//setResizable(false);
		//setSize(760,600);
		//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setLayout(new BorderLayout());
		getContentPane().add(panel, BorderLayout.CENTER);
		getContentPane().add(tilePanel, BorderLayout.WEST);
		setVisible(true);
		
		timer = new Timer(30, this);
		timer.setInitialDelay(30);
		timer.start(); 
	}

	@Override
	public void keyPressed(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void keyReleased(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void keyTyped(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}

	public void actionPerformed(ActionEvent e) {
		
		Object o = e.getSource();
		
		if(o == timer){
			panel.repaint();
			timer.restart();
		}
		
		if(e.getSource() == New){
			
		}else if(e.getSource() == Open){
			
		}else if(e.getSource() == Save){
			
		}else if(e.getSource() == button){
			panel.setKeysClicked();
		}else if(e.getSource() == fill){
			panel.fill();
		}else if(e.getSource() == P){
			panel.setKey("P");
		}else if(e.getSource() == B)/>/>{
			panel.setKey("B");
		}else if(e.getSource() == M){
			panel.setKey("M");
		}
	}
	
	
}



import java.util.ArrayList;


public class Map {
	Sprite monster, mapSprite;
	String charString;
	
	public Map(String charString, Sprite mapSprite){
		this.charString = charString;
		this.mapSprite = mapSprite;
	}
	
	public void setMapSprite(Sprite mapSprite){
		this.mapSprite = mapSprite;
	}
	
	public Sprite getMapSprite(){
		return mapSprite;
	}
	
	public Sprite getMonster(){
		return monster;
	}
	
	public String getCharString(){
		return charString;
	}
	
	public void setMonster(Sprite monster){
		this.monster = monster;
	}
	
	public void setCharString(String charString){
		this.charString = charString;
	}
}





import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JPanel;

public class TilePanel extends JPanel implements MouseMotionListener,MouseListener,ActionListener{
	JButton dirt, grass, stone, water;
	public TilePanel(){
		addMouseListener(this);
		addMouseMotionListener(this);
		setPreferredSize(new Dimension(50,572));
		
		dirt = new JButton("");
		grass = new JButton("");
		stone = new JButton("");
		water = new JButton("");
	
		dirt.setPreferredSize(new Dimension(32,32));
		dirt.setIcon(new ImageIcon("Dirt.png"));
		grass.setPreferredSize(new Dimension(32,32));
		grass.setIcon(new ImageIcon("Grass.png"));
		stone.setPreferredSize(new Dimension(32,32));
		stone.setIcon(new ImageIcon("Stone.png"));
		water.setPreferredSize(new Dimension(32,32));
		water.setIcon(new ImageIcon("Water.png"));

		dirt.addActionListener(this);
		grass.addActionListener(this);
		stone.addActionListener(this);
		water.addActionListener(this);
		
		add(dirt);
		add(grass);
		add(stone);
		add(water);
	}
	
	public void paintComponent(Graphics g){
		super.paintComponent(g);
		
		g.setColor(Color.BLACK);
		g.fillRect(0, 0, getWidth(), getHeight());
	}
	
	public void actionPerformed(ActionEvent e) {
		Object o = e.getSource();
		
		if(e.getSource() == dirt){
			DrawPanel.setClicked("D");
		}else if(e.getSource() == water){
			DrawPanel.setClicked("W");
		}else if(e.getSource() == stone){
			DrawPanel.setClicked("S");
		}else if(e.getSource() == grass){
			DrawPanel.setClicked("G");
		}
	}

	@Override
	public void mouseClicked(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mouseEntered(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mouseExited(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mousePressed(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mouseReleased(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mouseDragged(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void mouseMoved(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}
}





import java.awt.Color;
import java.awt.Graphics;
import java.awt.Image;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;

import javax.swing.ImageIcon;
import javax.swing.JPanel;

public class DrawPanel extends JPanel implements MouseMotionListener,MouseListener{
	Map[][] map;
	public static String tile;
	private static Image d = null;
	private static boolean drawingClicked = false;
	private boolean showKeys, showStartAndEnd, fill;
	private String k;
	String[][] key;
	
	public DrawPanel(){
		addMouseListener(this);
		addMouseMotionListener(this);
		
		Image d = new ImageIcon("Blank.png").getImage();
		
		map = new Map[22][17];
		key = new String[22][17];
		showKeys = false;
		showStartAndEnd = false;
		fill = false;
		
		for(int j = 0; j < 17; j++){
			for(int i = 0; i < 22; i++){
				key[i][j] = new String("N");
				Animation a = new Animation();
				a.addScene(d, 5250);
				Sprite s = new Sprite(a);
				s.setX(32*i);
				s.setY(32*j);
				
				map[i][j] = new Map("P", s);
			}
		}
	}
	
	public void setKey(String key){
		drawingClicked = false;
		k = key;
	}
	
	public void fill(){
		if(fill)
			fill = false;
		else
			fill = true;
	}
	
	public void loadMap(int mapNumber){
		
	}
	
	public void setKeysClicked(){
		if(showKeys){
			showKeys = false;
		}else
			showKeys = true;
	}
	
	public static void setClicked(String tileClicked){
		switch(tileClicked){
			case "D": d = new ImageIcon("Dirt.png").getImage();
				break;
			case "G": d = new ImageIcon("Grass.png").getImage();
				break;
			case "W": d = new ImageIcon("Water.png").getImage();
				break;
			case "S": d = new ImageIcon("Stone.png").getImage();
				break;
		}
		drawingClicked = true;
	}
	
	public void paintComponent(Graphics g){
		super.paintComponent(g);
		
//		g.setColor(Color.WHITE);
//		g.fillRect(0, 0, getWidth(), getHeight());
		for(int j = 0; j < 17; j++){
			for(int i = 0; i < 22; i++){
				if(map != null){
					Sprite s = map[i][j].getMapSprite();
				
					g.drawImage(s.getImage(), Math.round(s.getX()), Math.round(s.getY()), null);
					
					if(showKeys){
						g.drawString(key[i][j], Math.round(s.getX()) + 10 , Math.round(s.getY()) + 19);
					}
				}
			}
		}
	}


	@Override
	public void mouseClicked(MouseEvent e) {
	}


	@Override
	public void mouseEntered(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}


	@Override
	public void mouseExited(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}


	@Override
	public void mousePressed(MouseEvent e) {
		if(e.getX() > 0 && e.getX() <= getWidth() && e.getY() > 0 && e.getY() < getHeight()){
			Animation a = new Animation();
			a.addScene(d, 50);
			if(fill && drawingClicked){
				fill = false;
				for(int j = 0; j < 17; j++){
					for(int i = 0; i < 22; i++){
						Sprite mapSprite = new Sprite(a);
						mapSprite.setX(i * 32);
						mapSprite.setY(j * 32);
						map[i][j].setMapSprite(mapSprite);	
					}
				}
			}else if(drawingClicked){
				Sprite mapSprite = new Sprite(a);
				mapSprite.setX((e.getX()/32) * 32);
				mapSprite.setY((e.getY()/32)*32);
				map[e.getX()/32][e.getY()/32].setMapSprite(mapSprite);	
			}else{
				if(fill){
					for(int j = 0; j < 17; j++){
						for(int i = 0; i < 22; i++){
							key[i][j] = k;
						}
					}
				}
				else
					key[e.getX()/32][e.getY()/32] = k;
			}
		}
	}


	@Override
	public void mouseReleased(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}


	@Override
	public void mouseDragged(MouseEvent e) {
		if(e.getX() > 0 && e.getX() <= getWidth() && e.getY() > 0 && e.getY() < getHeight()){
			if(drawingClicked){
				Animation a = new Animation();
				a.addScene(d, 50);
				Sprite mapSprite = new Sprite(a);
				mapSprite.setX((e.getX()/32) * 32);
				mapSprite.setY((e.getY()/32)*32);
				map[e.getX()/32][e.getY()/32].setMapSprite(mapSprite);	
			}else{
				key[e.getX()/32][e.getY()/32] = k;
			}
		}
	}


	@Override
	public void mouseMoved(MouseEvent e) {
		// TODO Auto-generated method stub
		
	}
}




Thanks a lot!

Viewing all articles
Browse latest Browse all 51036

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>