How do I tie my image to my panel ?
Hi All
A very new newbie to Java so please be gentle with me.
I have some code that I have cobbled together from various sources on
the web (Thanks to all those whose source has helped me get this far).
I am attempting to write a small test application using MVC which will
open a small window and display an image as a background and then
allow me to move an object around using the keyboard..
I have the code below which opens a window in the middle of the
screen. However, I do not know how to attach the image (img) to the
panel (jpanel).
Can anyone please advise me.
Many thanks in advance for any help offered.
Iain
+++++++++++++++++++++++++++++++++++++++++++++++++++
The relevent code.
/* Variables required. */
private Model model; // The Model to register with
and
// receive updates from
private Controller controller; // The controller for events
private Canvas canvas; // The canvas to be drawn on
Image img;
public ViewGraphical(Model m)
{
super("Test Application Using MVC");
JPanel p = new JPanel();
try
{
String filePath = "C:\\Documents and Settings..............
\
\ThePen.jpg";
img = ImageIO.read(new File(filePath));
}
catch (IOException e)
{
String lerror = e.getMessage();
}
// this.setBackground(new Color(124, 100, 95));
this.setContentPane(p);
this.pack();
this.setVisible(true);
this.setSize(500, 500);
// This will set the panel in the middle of the screen
// First get the actual screen size
Dimension screenSize = Toolkit.getDefaultToolkit
().getScreenSize();
// Get the size and height of the frame object
Dimension size = this.getSize();
// assign the height and width of the screen as half of the
actual
size
screenSize.height = screenSize.height/2;
screenSize.width = screenSize.width/2;
// Assign the frame height and size as half of the current
frame
size
size.height = size.height/2;
size.width = size.width/2;
// Now set the co-ordinates of the frame
int y = screenSize.height - size.height;
int x = screenSize.width - size.width;
// Set the location of the panel
this.setLocation(x, y);
// Make sure that the frame is on top
this.setAlwaysOnTop(true);
model = m;
model.addObserver(this); // Register this class with the
Model
controller = new Controller(model); // Make the Controller
using
the same Model
}