GameFrame() {
super(title);
addKeyListener(new GameKeyListener());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
pack();
Dimension dm = Toolkit.getDefaultToolkit().getScreenSize();
setLocation((dm.width - CanvasW) / 2, (dm.height - CanvasH) / 2);
Insets is = getInsets();
setSize(CanvasW + is.left + is.right, CanvasH + is.top + is.bottom);

addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) { System.exit(0); }
});

field = new FieldCanvas();
getContentPane().add(field);

setVisible(true);

field.loadStage(0);
field.start();
}
}