child window

I'm a 4th semester university student and now I'm having an internship in a company that gives me a project wich is making a rich client application using NetBeans platform.

I want to ask how to show a single small window (I'm not using window component here) that appear when application start as a child window? I want to make a login window which can close automatically after I click "login" button and in sequence will open another child window.

Thanks b4 for helping me

-hanapewee-

[516 byte] By [hanapewee] at [2007-11-26 7:43:42]
# 1

While I'm not completely sure what you are trying to achieve. I would suggest to use Swing API directly here.

For a dialog window with your custom components inside check out the JDialog class. A tutorial article for it is here: http://java.sun.com/docs/books/tutorial/uiswing/components/toplevel.html

If you want a simpler informations message window then JOptionPane is your choice. You can find more info on it here: http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JOptionPane.html

HTH,

Kirill

KSorokin at 2007-7-6 19:53:29 > top of Java-index,Development Tools,Java Tools...
# 2

thank you for the suggestion.. but it still won't work :( the login form won't open

here's my code

/*

* LoginForm.java

*/

package org.myorg.coba;

public class LoginForm extends javax.swing.JInternalFrame {

/** Creates new form LoginForm */

public LoginForm() {

initComponents();

}

/** This method is called from within the constructor to

* initialize the form.

* WARNING: Do NOT modify this code. The content of this method is

* always regenerated by the Form Editor.

*/

// <editor-fold defaultstate="collapsed" desc=" Generated Code ">

private void initComponents() {

jLabel1 = new javax.swing.JLabel();

jTextField1 = new javax.swing.JTextField();

jLabel2 = new javax.swing.JLabel();

jTextField2 = new javax.swing.JTextField();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

jLabel1.setText("User ID :");

jTextField1.setText("jTextField1");

jLabel2.setText("Password :");

jTextField2.setText("jTextField2");

jButton1.setText("Cancel");

jButton2.setText("Log In");

org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

layout.setHorizontalGroup(

layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)

.add(layout.createSequentialGroup()

.addContainerGap()

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)

.add(jLabel1)

.add(jLabel2))

.add(18, 18, 18)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false)

.add(jTextField2)

.add(jTextField1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 131, Short.MAX_VALUE))

.addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

.add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()

.addContainerGap(78, Short.MAX_VALUE)

.add(jButton2)

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(jButton1)

.addContainerGap())

);

layout.setVerticalGroup(

layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)

.add(layout.createSequentialGroup()

.addContainerGap()

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)

.add(jLabel1)

.add(jTextField1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)

.add(jLabel2)

.add(jTextField2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))

.add(30, 30, 30)

.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)

.add(jButton1)

.add(jButton2))

.addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

);

pack();

}// </editor-fold>

// Variables declaration - do not modify

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JLabel jLabel1;

private javax.swing.JLabel jLabel2;

private javax.swing.JTextField jTextField1;

private javax.swing.JTextField jTextField2;

// End of variables declaration

}

- --

package org.myorg.coba;

import org.openide.util.HelpCtx;

import org.openide.util.NbBundle;

import org.openide.util.actions.CallableSystemAction;

public final class LoginAction extends CallableSystemAction {

public void performAction() {

LoginForm window = new LoginForm();

window.setVisible(true);

}

public String getName() {

return NbBundle.getMessage(LoginAction.class, "CTL_LoginAction");

}

protected String iconResource() {

return "org/myorg/coba/Users.gif";

}

public HelpCtx getHelpCtx() {

return HelpCtx.DEFAULT_HELP;

}

protected boolean asynchronous() {

return false;

}

}

hanapewee at 2007-7-6 19:53:29 > top of Java-index,Development Tools,Java Tools...
# 3
Hm. JInternalFrame is hardly the correct base class, as its javadoc suggests it's intended to be added to a JDesktopPane - http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/JInternalFrame.htmlPlease consider subclassing JFrame or JDialog.
KSorokin at 2007-7-6 19:53:29 > top of Java-index,Development Tools,Java Tools...