Como criar janela de login?

Galera socorroooo, preciso de uma ajudasa o mais urgente possivel, eu estou com um layout de login e outro para um biblioteca onde o usuario vai poder consultar livros alugar entre outros, so que o q eu n to conseguindo fazer eh chamar primeiro a tela de login entrar com usuario e senha, para depois entrar no sistema da biblioteca.

a tela de login eh essa:

[color=blue]package biblioteca;
/**
*

  • @author Bruce Balby
    */
    public class Login2 extends javax.swing.JPanel {

    /** Creates new form Login2 */
    public Login2() {
    initComponents();
    }

    @SuppressWarnings(“unchecked”)
    //
    private void initComponents() {

     jPanel1 = new javax.swing.JPanel();
     jButton1 = new javax.swing.JButton();
     jButton2 = new javax.swing.JButton();
     jTextField1 = new javax.swing.JTextField();
     jPasswordField1 = new javax.swing.JPasswordField();
     label1 = new java.awt.Label();
     label2 = new java.awt.Label();
    
     setName("Form"); // NOI18N
    
     jPanel1.setName("jPanel1"); // NOI18N
    
     org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(biblioteca.BibliotecaApp.class).getContext().getResourceMap(Login2.class);
     jButton1.setText(resourceMap.getString("jButton1.text")); // NOI18N
     jButton1.setToolTipText(resourceMap.getString("jButton1.toolTipText")); // NOI18N
     jButton1.setName("jButton1"); // NOI18N
    
     jButton2.setText(resourceMap.getString("jButton2.text")); // NOI18N
     jButton2.setToolTipText(resourceMap.getString("jButton2.toolTipText")); // NOI18N
     jButton2.setName("jButton2"); // NOI18N
    
     jTextField1.setText(resourceMap.getString("jTextField1.text")); // NOI18N
     jTextField1.setName("jTextField1"); // NOI18N
    
     jPasswordField1.setText(resourceMap.getString("jPasswordField1.text")); // NOI18N
     jPasswordField1.setName("jPasswordField1"); // NOI18N
    
     label1.setName("usuario"); // NOI18N
     label1.setText(resourceMap.getString("usuario.text")); // NOI18N
    
     label2.setName("senha"); // NOI18N
     label2.setText(resourceMap.getString("senha.text")); // NOI18N
    
     javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
     jPanel1.setLayout(jPanel1Layout);
     jPanel1Layout.setHorizontalGroup(
         jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
         .addGroup(jPanel1Layout.createSequentialGroup()
             .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                 .addGroup(jPanel1Layout.createSequentialGroup()
                     .addGap(9, 9, 9)
                     .addComponent(label1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                 .addGroup(jPanel1Layout.createSequentialGroup()
                     .addContainerGap()
                     .addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
             .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
             .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                 .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
                     .addComponent(jButton1)
                     .addGap(14, 14, 14)
                     .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 71, javax.swing.GroupLayout.PREFERRED_SIZE))
                 .addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                     .addComponent(jPasswordField1, javax.swing.GroupLayout.Alignment.TRAILING)
                     .addComponent(jTextField1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 128, Short.MAX_VALUE)))
             .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
     );
     jPanel1Layout.setVerticalGroup(
         jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
         .addGroup(jPanel1Layout.createSequentialGroup()
             .addGap(36, 36, 36)
             .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                 .addComponent(label1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                 .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
             .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
             .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                 .addGroup(jPanel1Layout.createSequentialGroup()
                     .addComponent(jPasswordField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                     .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                     .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                         .addComponent(jButton2)
                         .addComponent(jButton1)))
                 .addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
             .addContainerGap())
     );
    
     label2.getAccessibleContext().setAccessibleDescription(resourceMap.getString("senha.AccessibleContext.accessibleDescription")); // NOI18N
    
     javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
     this.setLayout(layout);
     layout.setHorizontalGroup(
         layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
         .addGroup(layout.createSequentialGroup()
             .addGap(95, 95, 95)
             .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
             .addContainerGap(97, Short.MAX_VALUE))
     );
     layout.setVerticalGroup(
         layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
         .addGroup(layout.createSequentialGroup()
             .addGap(83, 83, 83)
             .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
             .addContainerGap(91, Short.MAX_VALUE))
     );
    

    }//

    // Variables declaration - do not modify
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPasswordField jPasswordField1;
    private javax.swing.JTextField jTextField1;
    private java.awt.Label label1;
    private java.awt.Label label2;
    // End of variables declaration

}
[/color]

A tela da bibioteca eh essa:

package biblioteca;

import org.jdesktop.application.Action;
import org.jdesktop.application.ResourceMap;
import org.jdesktop.application.SingleFrameApplication;
import org.jdesktop.application.FrameView;
import org.jdesktop.application.TaskMonitor;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Timer;
import javax.swing.Icon;
import javax.swing.JDialog;
import javax.swing.JFrame;

/**

  • The application’s main frame.
    */
    public class BibliotecaView extends FrameView {

    public BibliotecaView(SingleFrameApplication app) {
    super(app);

     initComponents();
    
     // status bar initialization - message timeout, idle icon and busy animation, etc
     ResourceMap resourceMap = getResourceMap();
     int messageTimeout = resourceMap.getInteger("StatusBar.messageTimeout");
     messageTimer = new Timer(messageTimeout, new ActionListener() {
         public void actionPerformed(ActionEvent e) {
             statusMessageLabel.setText("");
         }
     });
     messageTimer.setRepeats(false);
     int busyAnimationRate = resourceMap.getInteger("StatusBar.busyAnimationRate");
     for (int i = 0; i < busyIcons.length; i++) {
         busyIcons[i] = resourceMap.getIcon("StatusBar.busyIcons[" + i + "]");
     }
     busyIconTimer = new Timer(busyAnimationRate, new ActionListener() {
         public void actionPerformed(ActionEvent e) {
             busyIconIndex = (busyIconIndex + 1) % busyIcons.length;
             statusAnimationLabel.setIcon(busyIcons[busyIconIndex]);
         }
     });
     idleIcon = resourceMap.getIcon("StatusBar.idleIcon");
     statusAnimationLabel.setIcon(idleIcon);
     progressBar.setVisible(false);
    
     // connecting action tasks to status bar via TaskMonitor
     TaskMonitor taskMonitor = new TaskMonitor(getApplication().getContext());
     taskMonitor.addPropertyChangeListener(new java.beans.PropertyChangeListener() {
         public void propertyChange(java.beans.PropertyChangeEvent evt) {
             String propertyName = evt.getPropertyName();
             if ("started".equals(propertyName)) {
                 if (!busyIconTimer.isRunning()) {
                     statusAnimationLabel.setIcon(busyIcons[0]);
                     busyIconIndex = 0;
                     busyIconTimer.start();
                 }
                 progressBar.setVisible(true);
                 progressBar.setIndeterminate(true);
             } else if ("done".equals(propertyName)) {
                 busyIconTimer.stop();
                 statusAnimationLabel.setIcon(idleIcon);
                 progressBar.setVisible(false);
                 progressBar.setValue(0);
             } else if ("message".equals(propertyName)) {
                 String text = (String)(evt.getNewValue());
                 statusMessageLabel.setText((text == null) ? "" : text);
                 messageTimer.restart();
             } else if ("progress".equals(propertyName)) {
                 int value = (Integer)(evt.getNewValue());
                 progressBar.setVisible(true);
                 progressBar.setIndeterminate(false);
                 progressBar.setValue(value);
             }
         }
     });
    

    }

    @Action
    public void showAboutBox() {
    if (aboutBox == null) {
    JFrame mainFrame = BibliotecaApp.getApplication().getMainFrame();
    aboutBox = new BibliotecaAboutBox(mainFrame);
    aboutBox.setLocationRelativeTo(mainFrame);
    }
    BibliotecaApp.getApplication().show(aboutBox);
    }

    /** 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.
      */
      @SuppressWarnings(“unchecked”)
      //
      private void initComponents() {

      mainPanel = new javax.swing.JPanel();
      menuBar = new javax.swing.JMenuBar();
      javax.swing.JMenu fileMenu = new javax.swing.JMenu();
      javax.swing.JMenuItem exitMenuItem = new javax.swing.JMenuItem();
      jMenuItem1 = new javax.swing.JMenuItem();
      javax.swing.JMenu helpMenu = new javax.swing.JMenu();
      javax.swing.JMenuItem aboutMenuItem = new javax.swing.JMenuItem();
      statusPanel = new javax.swing.JPanel();
      javax.swing.JSeparator statusPanelSeparator = new javax.swing.JSeparator();
      statusMessageLabel = new javax.swing.JLabel();
      statusAnimationLabel = new javax.swing.JLabel();
      progressBar = new javax.swing.JProgressBar();

      mainPanel.setName(“mainPanel”); // NOI18N

      javax.swing.GroupLayout mainPanelLayout = new javax.swing.GroupLayout(mainPanel);
      mainPanel.setLayout(mainPanelLayout);
      mainPanelLayout.setHorizontalGroup(
      mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
      .addGap(0, 400, Short.MAX_VALUE)
      );
      mainPanelLayout.setVerticalGroup(
      mainPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
      .addGap(0, 249, Short.MAX_VALUE)
      );

      menuBar.setName(“menuBar”); // NOI18N

      org.jdesktop.application.ResourceMap resourceMap = org.jdesktop.application.Application.getInstance(biblioteca.BibliotecaApp.class).getContext().getResourceMap(BibliotecaView.class);
      fileMenu.setText(resourceMap.getString(“fileMenu.text”)); // NOI18N
      fileMenu.setName(“fileMenu”); // NOI18N

      javax.swing.ActionMap actionMap = org.jdesktop.application.Application.getInstance(biblioteca.BibliotecaApp.class).getContext().getActionMap(BibliotecaView.class, this);
      exitMenuItem.setAction(actionMap.get(“quit”)); // NOI18N
      exitMenuItem.setName(“exitMenuItem”); // NOI18N
      fileMenu.add(exitMenuItem);

      jMenuItem1.setText(resourceMap.getString(“jMenuItem1.text”)); // NOI18N
      jMenuItem1.setName(“jMenuItem1”); // NOI18N
      jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
      public void actionPerformed(java.awt.event.ActionEvent evt) {
      jMenuItem1ActionPerformed(evt);
      }
      });
      fileMenu.add(jMenuItem1);

      menuBar.add(fileMenu);

      helpMenu.setText(resourceMap.getString(“helpMenu.text”)); // NOI18N
      helpMenu.setName(“helpMenu”); // NOI18N

      aboutMenuItem.setAction(actionMap.get(“showAboutBox”)); // NOI18N
      aboutMenuItem.setName(“aboutMenuItem”); // NOI18N
      helpMenu.add(aboutMenuItem);

      menuBar.add(helpMenu);

      statusPanel.setName(“statusPanel”); // NOI18N

      statusPanelSeparator.setName(“statusPanelSeparator”); // NOI18N

      statusMessageLabel.setName(“statusMessageLabel”); // NOI18N

      statusAnimationLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
      statusAnimationLabel.setName(“statusAnimationLabel”); // NOI18N

      progressBar.setName(“progressBar”); // NOI18N

      javax.swing.GroupLayout statusPanelLayout = new javax.swing.GroupLayout(statusPanel);
      statusPanel.setLayout(statusPanelLayout);
      statusPanelLayout.setHorizontalGroup(
      statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
      .addComponent(statusPanelSeparator, javax.swing.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE)
      .addGroup(statusPanelLayout.createSequentialGroup()
      .addContainerGap()
      .addComponent(statusMessageLabel)
      .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 230, Short.MAX_VALUE)
      .addComponent(progressBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
      .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
      .addComponent(statusAnimationLabel)
      .addContainerGap())
      );
      statusPanelLayout.setVerticalGroup(
      statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
      .addGroup(statusPanelLayout.createSequentialGroup()
      .addComponent(statusPanelSeparator, javax.swing.GroupLayout.PREFERRED_SIZE, 2, javax.swing.GroupLayout.PREFERRED_SIZE)
      .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
      .addGroup(statusPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
      .addComponent(statusMessageLabel)
      .addComponent(statusAnimationLabel)
      .addComponent(progressBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
      .addGap(3, 3, 3))
      );

      setComponent(mainPanel);
      setMenuBar(menuBar);
      setStatusBar(statusPanel);
      }//

    private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
    new CadastroAluno().setVisible(true);
    }

    // Variables declaration - do not modify
    private javax.swing.JMenuItem jMenuItem1;
    private javax.swing.JPanel mainPanel;
    private javax.swing.JMenuBar menuBar;
    private javax.swing.JProgressBar progressBar;
    private javax.swing.JLabel statusAnimationLabel;
    private javax.swing.JLabel statusMessageLabel;
    private javax.swing.JPanel statusPanel;
    // End of variables declaration

    private final Timer messageTimer;
    private final Timer busyIconTimer;
    private final Icon idleIcon;
    private final Icon[] busyIcons = new Icon[15];
    private int busyIconIndex = 0;

    private JDialog aboutBox;
    }[color=blue] [/color]

Oi,

http://www.guj.com.br/posts/list/50115.java

http://www.guj.com.br/java/215775-login-usuario-nao-esta-entrando-desktop#1100580