TheBigPJ wrote:
Im confused why this isnt working....
"isn't working" is a poor description. DId you get an error message when
compiling, and error message when running, or di the output differ from
what you expected. If the latter, describe what you expected and what
you saw.
When I fix your code and run it it works OK for me (I had to create a
map.png). See below for probable error on your part.
Any ideas? What have I stupidly missed?
Thanks,
Peter
-----------------------------
import javax.swing.*;
import java.awt.*;
import java.util.*;
public class CAS2_Interface extends JPanel{
CAS_Engine theCAS_Engine;
Unused.
// CAS_Engine theCAS_Engine;
public static void main(String[] args)
{
JFrame mainWindow = new JFrame("CASAT - Connect a Square on a
Tesseract (Multiplayer)");
JPanel content = new JPanel();
content.add(new CAS2_Interface(), BorderLayout.WEST);
mainWindow.setContentPane(content);
mainWindow.getContentPane().setBackground(new
Color(176,196,222));
mainWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
mainWindow.setLocationRelativeTo(null);
mainWindow.pack();
mainWindow.setVisible(true);
}
public void CAS2_Interface()
This method has a constructor name
public CAS2_Interface()
{
setPreferredSize(new Dimension(600,471));
setBackground(new Color(173,216,230));
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
drawScreen((Graphics2D) g);
}
public void drawScreen(Graphics2D g)
{
//Uses the game board as defined in the program specification
Image image = Toolkit.getDefaultToolkit().getImage("./
map.png");
You don't check whether the file exists or the getImage succeeds. This
is where your problem lies.
I'd create a new File("./map.png") and check file.exists();
I'd check that image.getHeight(null) <> -1;
g.drawImage(image, 0,0,this);
}
}
doesn't want to provide any information more than this. Actually this
one has even less information.
is using the ImageObserver/Producer pattern. It will load and draw (if
it exists, as you point out) on its own.