Yesterday, I've written my first applet. It ran fine within Eclipse, so I wanted to try exporting it and view it in a browser. However I can't get it to work, I've searched the internet on how to compile, but still it doesn't work.
Would someone like to explain me step by step how to go from code to the applet in a browser.
Thank you very much!
This is my code:
package Applets;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.JApplet;
public class Dammen extends JApplet implements MouseListener{
/**
*
*/
private static final long serialVersionUID = 1L;
Dambord bord;
String s="Doe een zet, wit aan zet";
int x_in,y_in,x_uit,y_uit;
public void init(){
bord= new Dambord();
addMouseListener(this);
resize(500, 600);
}
public void paint(Graphics g){
for(int i=0;i<10;i++){
for (int j=0;j<10;j++){
if((i%2==1&& j%2==0)||(i%2==0&&j%2==1)){
g.setColor(Color.white);
}
else g.setColor(Color.black);
g.fillRect(50*i, 50*j, 50, 50);
}
}
g.setColor(Color.BLACK);
for(int i=0;i<bord.x_wit.size();i++){
g.drawOval(50*bord.x_wit.get(i)+12, 50*bord.y_wit.get(i)+12, 25, 25);
}
for (int i=0;i<bord.y_zwart.size();i++){
g.fillOval(50*bord.x_zwart.get(i)+12, 50*bord.y_zwart.get(i)+12, 25, 25);
}
g.drawString(s, 0, 550);
}
class Dambord{
public ArrayList<Integer> x_wit;
public ArrayList<Integer> y_wit;
public ArrayList<Integer> x_zwart;
public ArrayList<Integer> y_zwart;
private int aan_zet;
public Dambord(){
x_wit=new ArrayList<Integer>();
y_wit=new ArrayList<Integer>();
x_zwart=new ArrayList<Integer>();
y_zwart=new ArrayList<Integer>();
aan_zet=0;
for (int i=0;i<10;i++){
for(int j=0;j<10;j++){
if((i%2==1&& j%2==0)||(i%2==0&&j%2==1)){
if (j<4){
x_wit.add(i);
y_wit.add(j);
}
if (j>5){
x_zwart.add(i);
y_zwart.add(j);
}
}
}
}
}
public String doeZet(int x_0,int y_0,int x_1, int y_1){
if (x_0==x_1&&y_0==y_1)return "Geen actie ondernomen";
if (aan_zet==0){ //TODO pion pakken,
int a=this.zoekPosWit(x_0, y_0);
if (a==-1)return "Ongeldige zet";//geen pion gevonden
if (Math.abs(x_1-x_0)==1&&(y_1-y_0)==1){ //gewone zet
if (this.zoekPosWit(x_1, y_1)!=-1||this.zoekPosZwart(x_1, y_1)!=-1)return "Ongeldige zet";
x_wit.remove(a);
y_wit.remove(a);
x_wit.add(x_1);
y_wit.add(y_1);
aan_zet=1;
return "Zet succesvol gedaan, zwart aan zet";
}
if(Math.abs(x_1-x_0)==2&&(y_1-y_0)==2){ //pion pakken
if(this.zoekPosZwart(x_1-(x_1-x_0)/2,(y_1-1))!=-1){
x_wit.remove(a);
y_wit.remove(a);
x_wit.add(x_1);
y_wit.add(y_1);
int b=this.zoekPosZwart(x_1-(x_1-x_0)/2,y_1-1);
x_zwart.remove(b);
y_zwart.remove(b);
aan_zet=1;
return "Zet succesvol gedaan, zwart aan zet";
}
return "Ongeldige zet";
}
return "Ongeldige zet";
}
if (aan_zet==1){
int a=this.zoekPosZwart(x_0, y_0);
if (a==-1)return "Ongeldige zet";
if (Math.abs(x_1-x_0)==1&&(y_1-y_0)==-1){ //gewone zet
if (this.zoekPosZwart(x_1, y_1)!=-1||this.zoekPosWit(x_1, y_1)!=-1)return "Ongeldige zet";
x_zwart.remove(a);
y_zwart.remove(a);
x_zwart.add(x_1);
y_zwart.add(y_1);
aan_zet=0;
return "Zet succesvol gedaan, wit aan zet";
}
if(Math.abs(x_1-x_0)==2&&(y_1-y_0)==-2){ //pion pakken
if(this.zoekPosWit(x_1-(x_1-x_0)/2,(y_1+1))!=-1){
x_zwart.remove(a);
y_zwart.remove(a);
x_zwart.add(x_1);
y_zwart.add(y_1);
int b=this.zoekPosWit(x_1-(x_1-x_0)/2,y_1+1);
x_wit.remove(b);
y_wit.remove(b);
aan_zet=0;
return "Zet succesvol gedaan, wit aan zet";
}
return "Ongeldige zet";
}
return "ongeldige zet";
}
return "Fout in doeZet";
}
private int zoekPosWit(int x,int y){
for(int i=0;i<x_wit.size();i++){
if (x==x_wit.get(i)&&y==y_wit.get(i))return i;
}
return -1;
}
private int zoekPosZwart(int x,int y){
for(int i=0;i<x_zwart.size();i++){
if (x==x_zwart.get(i)&&y==y_zwart.get(i))return i;
}
return -1;
}
}
public int bepaalHok(int x){
if (x>=0&&x<500){
return (int)(x/50);
}
return -1;
}
public void mouseClicked(MouseEvent evt) {
}
public void mouseEntered(MouseEvent evt) {
}
public void mouseExited(MouseEvent evt) {
}
public void mousePressed(MouseEvent evt) {
x_in=bepaalHok(evt.getX());
y_in=bepaalHok(evt.getY());
}
public void mouseReleased(MouseEvent evt) {
x_uit=bepaalHok(evt.getX());
y_uit=bepaalHok(evt.getY());
if(x_in==-1||y_in==-1||x_uit==-1||y_uit==-1){
s="Ongeldige zet";
}
else s=bord.doeZet(x_in, y_in, x_uit, y_uit);
repaint();
}
}


Sign In
Create Account

Back to top









