Jtable y mas

Buen dia, estoy diseñando un software de aplicaciòn en java con netbean y necesito vuestra ayuda en cuanto a como crear una tabla dinamica la cual valla generando sus filas a medida que voy introduciendo datos en un jTextField y que esta tabla se muestre en el mismo jInternalFrame. A continuacion les muestro el codigo que tengo hasta ahora...

package Vista;

/**
*
* @author Administrador
*/
public class Enfermedad extends javax.swing.JInternalFrame {

/** Creates new form Enfermedad */
public Enfermedad() {
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.
*/
@SuppressWarnings("unchecked")
// //GEN-BEGIN:initComponents
private void initComponents() {

jPanel1 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
jPanel3 = new javax.swing.JPanel();
jLabel2 = new javax.swing.JLabel();
jTextField1 = new javax.swing.JTextField();
jTextField2 = new javax.swing.JTextField();
jLabel3 = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
jPanel4 = new javax.swing.JPanel();
jToolBar1 = new javax.swing.JToolBar();
jButton5 = new javax.swing.JButton();
jButton6 = new javax.swing.JButton();
jButton7 = new javax.swing.JButton();
jButton8 = new javax.swing.JButton();
jButton9 = new javax.swing.JButton();
jButton10 = new javax.swing.JButton();
jToolBar2 = new javax.swing.JToolBar();
jButton4 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jButton1 = new javax.swing.JButton();

setClosable(true);
setTitle("Registro de Diagnostico-Enfermedad");
setDebugGraphicsOptions(javax.swing.DebugGraphics.BUFFERED_OPTION);
setFocusTraversalPolicyProvider(true);
setFont(new java.awt.Font("Arial Unicode MS", 0, 12));
setFrameIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/access2.jpg"))); // NOI18N
setMinimumSize(new java.awt.Dimension(485, 395));
setOpaque(true);
setPreferredSize(new java.awt.Dimension(485, 395));
try {
setSelected(true);
} catch (java.beans.PropertyVetoException e1) {
e1.printStackTrace();
}
setVisible(true);
getContentPane().setLayout(null);

jPanel1.setFont(new java.awt.Font("Arial Unicode MS", 0, 12));

jLabel1.setFont(new java.awt.Font("Forte", 2, 36));
jLabel1.setForeground(new java.awt.Color(51, 102, 255));
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel1.setText("Enfermedades");

javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(125, 125, 125)
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 220, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(135, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 50, Short.MAX_VALUE)
.addContainerGap())
);

getContentPane().add(jPanel1);
jPanel1.setBounds(0, 0, 480, 50);

jPanel3.setBorder(javax.swing.BorderFactory.createEtchedBorder());
jPanel3.setMinimumSize(new java.awt.Dimension(600, 60));
jPanel3.setPreferredSize(new java.awt.Dimension(600, 67));

jLabel2.setFont(new java.awt.Font("Arial Unicode MS", 0, 12));
jLabel2.setText("Codigo");

jTextField1.setFont(new java.awt.Font("Arial Unicode MS", 0, 12));

jTextField2.setFont(new java.awt.Font("Arial Unicode MS", 0, 12));

jLabel3.setFont(new java.awt.Font("Arial Unicode MS", 0, 12));
jLabel3.setText("Nombre");

javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addGap(19, 19, 19)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel2)
.addComponent(jLabel3))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 150, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, 302, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(100, Short.MAX_VALUE))
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel3)
.addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);

getContentPane().add(jPanel3);
jPanel3.setBounds(0, 50, 480, 60);

jPanel2.setBorder(javax.swing.BorderFactory.createEtchedBorder());
jPanel2.setFont(new java.awt.Font("Arial Unicode MS", 0, 12));
jPanel2.setPreferredSize(new java.awt.Dimension(600, 180));
jPanel2.setLayout(null);
getContentPane().add(jPanel2);
jPanel2.setBounds(0, 110, 480, 180);

jToolBar1.setBorder(null);
jToolBar1.setRollover(true);
jToolBar1.setFont(new java.awt.Font("Arial Unicode MS", 0, 12));
jToolBar1.setPreferredSize(new java.awt.Dimension(100, 32));

jButton5.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/printer.png"))); // NOI18N
jButton5.setBorder(null);
jButton5.setMaximumSize(new java.awt.Dimension(32, 32));
jButton5.setMinimumSize(new java.awt.Dimension(32, 32));
jButton5.setPreferredSize(new java.awt.Dimension(32, 32));
jButton5.setRequestFocusEnabled(false);
jToolBar1.add(jButton5);

jButton6.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/edit.png"))); // NOI18N
jButton6.setBorder(null);
jButton6.setFocusable(false);
jButton6.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton6.setMaximumSize(new java.awt.Dimension(32, 32));
jButton6.setMinimumSize(new java.awt.Dimension(32, 32));
jButton6.setPreferredSize(new java.awt.Dimension(32, 32));
jButton6.setRequestFocusEnabled(false);
jButton6.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar1.add(jButton6);

jButton7.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/Recyle_Bin.png"))); // NOI18N
jButton7.setBorder(null);
jButton7.setFocusable(false);
jButton7.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton7.setMaximumSize(new java.awt.Dimension(32, 32));
jButton7.setMinimumSize(new java.awt.Dimension(32, 32));
jButton7.setPreferredSize(new java.awt.Dimension(32, 32));
jButton7.setRequestFocusEnabled(false);
jButton7.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar1.add(jButton7);

jButton8.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/filesave.png"))); // NOI18N
jButton8.setBorder(null);
jButton8.setFocusable(false);
jButton8.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton8.setMaximumSize(new java.awt.Dimension(32, 32));
jButton8.setMinimumSize(new java.awt.Dimension(32, 32));
jButton8.setPreferredSize(new java.awt.Dimension(32, 32));
jButton8.setRequestFocusEnabled(false);
jButton8.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar1.add(jButton8);

jButton9.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/button_cancel.png"))); // NOI18N
jButton9.setBorder(null);
jButton9.setFocusable(false);
jButton9.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton9.setMaximumSize(new java.awt.Dimension(32, 32));
jButton9.setMinimumSize(new java.awt.Dimension(32, 32));
jButton9.setPreferredSize(new java.awt.Dimension(32, 32));
jButton9.setRequestFocusEnabled(false);
jButton9.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar1.add(jButton9);

jButton10.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/exit.png"))); // NOI18N
jButton10.setBorder(null);
jButton10.setFocusable(false);
jButton10.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton10.setMaximumSize(new java.awt.Dimension(32, 32));
jButton10.setMinimumSize(new java.awt.Dimension(32, 32));
jButton10.setPreferredSize(new java.awt.Dimension(32, 32));
jButton10.setRequestFocusEnabled(false);
jButton10.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jButton10.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton10ActionPerformed(evt);
}
});
jToolBar1.add(jButton10);

jToolBar2.setBorder(null);
jToolBar2.setRollover(true);
jToolBar2.setPreferredSize(new java.awt.Dimension(100, 32));

jButton4.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton4.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/abajo.gif"))); // NOI18N
jButton4.setBorder(null);
jButton4.setFocusable(false);
jButton4.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton4.setMaximumSize(new java.awt.Dimension(32, 32));
jButton4.setMinimumSize(new java.awt.Dimension(32, 32));
jButton4.setPreferredSize(new java.awt.Dimension(32, 32));
jButton4.setRequestFocusEnabled(false);
jButton4.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar2.add(jButton4);

jButton2.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/der.gif"))); // NOI18N
jButton2.setBorder(null);
jButton2.setFocusable(false);
jButton2.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton2.setMaximumSize(new java.awt.Dimension(32, 32));
jButton2.setMinimumSize(new java.awt.Dimension(32, 32));
jButton2.setPreferredSize(new java.awt.Dimension(32, 32));
jButton2.setRequestFocusEnabled(false);
jButton2.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar2.add(jButton2);

jButton3.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/izq.gif"))); // NOI18N
jButton3.setBorder(null);
jButton3.setFocusable(false);
jButton3.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton3.setMaximumSize(new java.awt.Dimension(32, 32));
jButton3.setMinimumSize(new java.awt.Dimension(32, 32));
jButton3.setPreferredSize(new java.awt.Dimension(32, 32));
jButton3.setRequestFocusEnabled(false);
jButton3.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar2.add(jButton3);

jButton1.setFont(new java.awt.Font("Arial Unicode MS", 0, 5));
jButton1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/arriba.gif"))); // NOI18N
jButton1.setBorder(null);
jButton1.setFocusable(false);
jButton1.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER);
jButton1.setMaximumSize(new java.awt.Dimension(32, 32));
jButton1.setMinimumSize(new java.awt.Dimension(32, 32));
jButton1.setPreferredSize(new java.awt.Dimension(32, 32));
jButton1.setRequestFocusEnabled(false);
jButton1.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM);
jToolBar2.add(jButton1);

javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4);
jPanel4.setLayout(jPanel4Layout);
jPanel4Layout.setHorizontalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel4Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jToolBar2, javax.swing.GroupLayout.PREFERRED_SIZE, 134, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 133, Short.MAX_VALUE)
.addComponent(jToolBar1, javax.swing.GroupLayout.PREFERRED_SIZE, 193, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jPanel4Layout.setVerticalGroup(
jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel4Layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jToolBar1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jToolBar2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 32, Short.MAX_VALUE))
.addContainerGap())
);

getContentPane().add(jPanel4);
jPanel4.setBounds(0, 300, 480, 50);

pack();
}// //GEN-END:initComponents

private void jButton10ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton10ActionPerformed
//Enfermedad objEnf = new Enfermedad();
//objEnf.DISPOSE_ON_CLOSE;
}//GEN-LAST:event_jButton10ActionPerformed

// Variables declaration - do not modify//GEN-BEGIN:variables
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton10;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton4;
private javax.swing.JButton jButton5;
private javax.swing.JButton jButton6;
private javax.swing.JButton jButton7;
private javax.swing.JButton jButton8;
private javax.swing.JButton jButton9;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JTextField jTextField1;
private javax.swing.JTextField jTextField2;
private javax.swing.JToolBar jToolBar1;
private javax.swing.JToolBar jToolBar2;
// End of variables declaration//GEN-END:variables

}

Disculpen si es mucho pedir pero tambien necesito saber como coloco una imagen de fondo en un jframe, los codigos que he encontrado en internet no he podido adaptarlos, y ademas me gustaria saber como agregar un flash a mi aplicacion bien sea en un jframe o jpanel y como mostrar un globo de ayuda que muestre lo que hace un jbutton en el momento que ubique el cursor sobre el.
Estoy usando netbean 6.8 o 6.7, no se a donde voy a buscar esta respuesta y me gustaria que envien aunque sea un aviso a mi correo de estas respuestas, "yabra09@hotmail.com" ese es mi correo...
Mil disculpas si mi peticiòn es mucha pero necesito urgente vuestra ayuda...
Mil gracias...