This is what I use to achieve a similar effect of positioning a new window on a screen. You may be able to build from it.
Look specifically at the java.awt.Toolkit theKit = getToolkit(); line and associated lines. Currently it positions the window center of screen. Just play with the math's and you can place it anywhere.
------------------------------
public class AboutBox extends javax.swing.JFrame implements java.awt.event.ActionListener {
protected static int aboutWidth = 280;
protected static int aboutHeight = 230;
public AboutBox() {
super("");
this.setTitle("About Red Rover");
this.setResizable(false);
AboutBox.SymWindow aSymWindow = new AboutBox.SymWindow();
this.addWindowListener(aSymWindow);
this.pack();
java.awt.Toolkit theKit = getToolkit();
int yPos = (int) (new java.awt.Dimension(theKit.getScreenSize())).getHei ght() / 2 - aboutHeight / 2;
int xPos = (int) (new java.awt.Dimension(theKit.getScreenSize())).getWid th() / 2 - aboutWidth / 2;
this.setLocation(xPos, yPos);
this.setSize(aboutWidth, aboutHeight);
javax.swing.JLabel aboutLabel[];
int labelCount = 4;
aboutLabel = new javax.swing.JLabel[labelCount];
aboutLabel[0] = new javax.swing.JLabel("Red Rover");
aboutLabel[0].setFont(StyleUtil.LARGE_SYSTEM_BOLD);
aboutLabel[0].setAlignmentX(java.awt.Component.CENTER_ALIGNMENT );
aboutLabel[1] = new javax.swing.JLabel("Version 0.01");
aboutLabel[1].setFont(StyleUtil.SMALL_SYSTEM);
aboutLabel[1].setAlignmentX(java.awt.Component.CENTER_ALIGNMENT );
aboutLabel[2] = new javax.swing.JLabel("Developed by Helmut Kurt Burri");
aboutLabel[2].setFont(StyleUtil.SMALL_SYSTEM_BOLD);
aboutLabel[2].setAlignmentX(java.awt.Component.CENTER_ALIGNMENT );
aboutLabel[3] = new javax.swing.JLabel("and distributed under a Lesser GNU Licence");
aboutLabel[3].setFont(StyleUtil.SMALL_SYSTEM_BOLD);
aboutLabel[3].setAlignmentX(java.awt.Component.CENTER_ALIGNMENT );
/**
* Button launches links to web-site for
* more information on product
*/
javax.swing.JButton moreInfoButton = new javax.swing.JButton();
moreInfoButton = StyleUtil.aquaButton("More Info...", true, false);
moreInfoButton.addActionListener(new MoreInfo());
moreInfoButton.setAlignmentX(java.awt.Component.CE NTER_ALIGNMENT);
javax.swing.JButton aboutWindowIcon = new javax.swing.JButton(new javax.swing.ImageIcon(System.getProperty("image.pa th") + "aboutWindowIcon.png"));
aboutWindowIcon.addActionListener(new MoreInfo());
aboutWindowIcon.setAlignmentX(java.awt.Component.C ENTER_ALIGNMENT);
//Put everything together, using the content pane's BorderLayout.
java.awt.Container contentPanel = getContentPane();
contentPanel.setLayout(new javax.swing.BoxLayout(contentPanel, javax.swing.BoxLayout.Y_AXIS));
contentPanel.add(aboutWindowIcon);
contentPanel.add(aboutLabel[0]);
contentPanel.add(javax.swing.Box.createRigidArea(n ew java.awt.Dimension(0, 6)));
contentPanel.add(aboutLabel[1]);
contentPanel.add(aboutLabel[2]);
contentPanel.add(javax.swing.Box.createRigidArea(n ew java.awt.Dimension(0, 6)));
contentPanel.add(moreInfoButton);
contentPanel.add(javax.swing.Box.createRigidArea(n ew java.awt.Dimension(0, 6)));
contentPanel.add(aboutLabel[3]);
}
class MoreInfo implements java.awt.event.ActionListener {
public MoreInfo() {
}
public void actionPerformed(java.awt.event.ActionEvent e) {
try {
AssortedUtil.openURL("http://www.apple.com.au");
} catch (Exception e1) {
e1.printStackTrace();
}
}
}
class SymWindow extends java.awt.event.WindowAdapter {
public void windowClosing(java.awt.event.WindowEvent event) {
setVisible(false);
}
}
public void actionPerformed(java.awt.event.ActionEvent newEvent) {
setVisible(false);
}
}
------------------------------