Java - Abrir JDialog desde un JInternalFrame y java.lang.NullPointerException en Botones

 
Vista:
sin imagen de perfil
Val: 8
Ha aumentado su posición en 4 puestos en Java (en relación al último mes)
Gráfica de Java

Abrir JDialog desde un JInternalFrame y java.lang.NullPointerException en Botones

Publicado por Diego (5 intervenciones) el 25/04/2020 20:23:52
Buenas tardes a todos,
Acudo a ustedes para solicitar ayuda para un proyecto que vengo desarrollando en JAVA para tratar de aprender el manejo de este Lenguaje y al mismo tiempo para ponerlo en funcionamiento en una empresa.
El proyecto se esta aplicando con el patrón de diseño MVC y en este momento una de las dificultades es para abrir un JDialog llamado "ArticulosCrearForm" desde JInternalFrame llamado "ArticulosListarForm", porque el botón encargado de hacer esta función en el controlador "ArticulosCtrl" no hace nada, y el segundo problema es que cuando ejecuto la aplicación me sale el error de tipo java.lang.NullPointerException y me indica que proviene de los Botones que pertenecen a la vista "ArticulosCrearForm", dichos botones funcionan bien, solo que al momento de hacer el llamado desde la clase Main se prodice este error

Aquí tenemos el código de la vista ArticulosListarForm

package vistas.articulos;

import DAO.ArticulosDao;
import com.placeholder.PlaceHolder;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import javax.swing.JTable;
import javax.swing.plaf.ComboBoxUI;
import javax.swing.table.JTableHeader;
import javax.swing.table.TableColumnModel;
import javax.swing.text.JTextComponent;
import utilidades.HoverBotones;
import utilidades.RenderTablas;
import utilidades.MyScrollbar;
import utilidades.StyleComboBox;
import controlador.ArticulosCtrl;
import entidades.Articulos;
import java.awt.BorderLayout;
import java.awt.Frame;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableModel;
import vistas.articulos.ArticulosListarForm;

/**
*
* @author DIEGO
*/
public class ArticulosListarForm extends javax.swing.JInternalFrame {

Articulos mod_a = new Articulos();
ArticulosDao modd_a = new ArticulosDao();

DefaultTableModel modelo = new DefaultTableModel();

int px, py;

HoverBotones hoverlbl = new HoverBotones();
RenderTablas rendertbl = new RenderTablas();
JTableHeader modeltabla = new JTableHeader();

public ArticulosListarForm() {
initComponents();

((javax.swing.plaf.basic.BasicInternalFrameUI)this.getUI()).setNorthPane(null);

tblArticulos.setDefaultRenderer(Object.class, rendertbl);
rendertbl.modeloTablas(tblArticulos.getTableHeader());
jScrollListarArt.getViewport().setBackground(new java.awt.Color(1,24,38));
jScrollListarArt.getViewport().setBackground(new java.awt.Color(1,24,38));
jScrollListarArt.getVerticalScrollBar().setUI(new MyScrollbar());
jScrollListarArt.getHorizontalScrollBar().setUI(new MyScrollbar());

txtBuscarArticulo.requestFocus();

scrollTabla();
listar();
modeloColumnas();
//btnEliminar.setVisible(false);
holders();
}

public void scrollTabla(){

tblArticulos.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
jScrollListarArt.setViewportView(tblArticulos);
pnlScrollArt.add(jScrollListarArt);
}

//Método para listar todos los articulos
public void listar(){

List<Articulos> lista = modd_a.listar();
modelo = (DefaultTableModel) tblArticulos.getModel();
Object[] obj = new Object[17];

for(int i = 0; i < lista.size(); i++){

obj[0] = lista.get(i).getId();
obj[1] = lista.get(i).getSku();
obj[2] = lista.get(i).getNombre();
obj[3] = lista.get(i).getUnd();
obj[4] = lista.get(i).getPeso();
obj[5] = lista.get(i).getPrecio_compra();
obj[6] = lista.get(i).getValor();
obj[7] = lista.get(i).getStock();
obj[8] = lista.get(i).getExistencia();
obj[9] = lista.get(i).getDisponible();
obj[10] = lista.get(i).getReferencia();
obj[11] = lista.get(i).getSerie();
obj[12] = lista.get(i).getDescripcion();
obj[13] = lista.get(i).getTipo_articulo();
obj[14] = lista.get(i).getCategoria();
obj[15] = lista.get(i).getUbicacion();
obj[16] = lista.get(i).getObservaciones();

modelo.addRow(obj);
}
tblArticulos.setModel(modelo);
}

//Método para darle tamaño a las columnas de la tabla
public void modeloColumnas(){

TableColumnModel modeloColumn = tblArticulos.getColumnModel();

modeloColumn.getColumn(0).setPreferredWidth(100);//id
modeloColumn.getColumn(1).setPreferredWidth(150);//sku
modeloColumn.getColumn(2).setPreferredWidth(900);//nombre
modeloColumn.getColumn(3).setPreferredWidth(200);//und
modeloColumn.getColumn(4).setPreferredWidth(150);//peso
modeloColumn.getColumn(5).setPreferredWidth(220);//vr compra
modeloColumn.getColumn(6).setPreferredWidth(220);//vr salida
modeloColumn.getColumn(7).setPreferredWidth(160);//stock
modeloColumn.getColumn(8).setPreferredWidth(160);//existencia
modeloColumn.getColumn(9).setPreferredWidth(160);//disponible
modeloColumn.getColumn(10).setPreferredWidth(300);//ref.
modeloColumn.getColumn(11).setPreferredWidth(300);//serie
modeloColumn.getColumn(12).setPreferredWidth(500);//descrip
modeloColumn.getColumn(13).setPreferredWidth(350);//tipo
modeloColumn.getColumn(14).setPreferredWidth(350);//categoría
modeloColumn.getColumn(15).setPreferredWidth(350);//ubicación
modeloColumn.getColumn(16).setPreferredWidth(900);//observ.
}

public void holders(){
PlaceHolder holder;
holder = new PlaceHolder(txtBuscarArticulo, " BUSCAR ARTICULO");
}

public void cerrarVent(){
this.dispose();
this.setVisible(false);
}

/**
* 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")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jPanel1 = new javax.swing.JPanel();
pnlScrollArt = new javax.swing.JPanel();
jScrollListarArt = new javax.swing.JScrollPane();
tblArticulos = new javax.swing.JTable();
jPanel6 = new javax.swing.JPanel();
jLabel1 = new javax.swing.JLabel();
lblCerrar = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
txtBuscarArticulo = new javax.swing.JTextField();
jLabel14 = new javax.swing.JLabel();
jPanel3 = new javax.swing.JPanel();
btnEliminarArticulo = new javax.swing.JButton();
btnNuevoArticulo = new javax.swing.JButton();
btnEditarArt = new javax.swing.JButton();
jSeparator1 = new javax.swing.JSeparator();

setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.LOWERED, new java.awt.Color(204, 204, 204), new java.awt.Color(204, 204, 204), new java.awt.Color(204, 204, 204), new java.awt.Color(204, 204, 204)));
setName("ArticulosListarForm"); // NOI18N
setPreferredSize(new java.awt.Dimension(900, 550));

jPanel1.setBackground(new java.awt.Color(255, 255, 255));
jPanel1.setPreferredSize(new java.awt.Dimension(900, 550));

pnlScrollArt.setBackground(new java.awt.Color(255, 255, 255));
pnlScrollArt.setName("pnlScrollArt"); // NOI18N
pnlScrollArt.setPreferredSize(new java.awt.Dimension(1700, 375));

jScrollListarArt.setBackground(new java.awt.Color(255, 255, 255));
jScrollListarArt.setBorder(null);
jScrollListarArt.setName("jScrollListarArt"); // NOI18N
jScrollListarArt.setPreferredSize(new java.awt.Dimension(1700, 375));

tblArticulos.setBackground(new java.awt.Color(255, 255, 255));
tblArticulos.setFont(new java.awt.Font("SansSerif", 0, 12)); // NOI18N
tblArticulos.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {

},
new String [] {
"ID", "SKU", "DETALLE", "UNIDAD", "PESO KG", "VR. COMPRA", "VR. SALIDA", "STOCK", "EXISTENCIA", "DISPONIBLE", "REFERENCIA", "SERIE", "DESCRIPCIÓN", "TIPO ARTICULO", "CATEGORIA", "UBICACION", "OBSERVACIÓN"
}
) {
Class[] types = new Class [] {
java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Boolean.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class, java.lang.Object.class
};
boolean[] canEdit = new boolean [] {
false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false
};

public Class getColumnClass(int columnIndex) {
return types [columnIndex];
}

public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex];
}
});
tblArticulos.setFocusable(false);
tblArticulos.setGridColor(new java.awt.Color(255, 255, 255));
tblArticulos.setName("tblArticulos"); // NOI18N
tblArticulos.setPreferredSize(new java.awt.Dimension(3000, 750));
tblArticulos.setShowHorizontalLines(false);
tblArticulos.setShowVerticalLines(false);
tblArticulos.getTableHeader().setReorderingAllowed(false);
jScrollListarArt.setViewportView(tblArticulos);
if (tblArticulos.getColumnModel().getColumnCount() > 0) {
tblArticulos.getColumnModel().getColumn(0).setResizable(false);
tblArticulos.getColumnModel().getColumn(1).setResizable(false);
tblArticulos.getColumnModel().getColumn(2).setResizable(false);
tblArticulos.getColumnModel().getColumn(3).setResizable(false);
tblArticulos.getColumnModel().getColumn(4).setResizable(false);
tblArticulos.getColumnModel().getColumn(5).setResizable(false);
tblArticulos.getColumnModel().getColumn(6).setResizable(false);
tblArticulos.getColumnModel().getColumn(7).setResizable(false);
tblArticulos.getColumnModel().getColumn(8).setResizable(false);
tblArticulos.getColumnModel().getColumn(9).setResizable(false);
tblArticulos.getColumnModel().getColumn(10).setResizable(false);
tblArticulos.getColumnModel().getColumn(11).setResizable(false);
tblArticulos.getColumnModel().getColumn(12).setResizable(false);
tblArticulos.getColumnModel().getColumn(13).setResizable(false);
tblArticulos.getColumnModel().getColumn(14).setResizable(false);
tblArticulos.getColumnModel().getColumn(15).setResizable(false);
tblArticulos.getColumnModel().getColumn(16).setResizable(false);
}

javax.swing.GroupLayout pnlScrollArtLayout = new javax.swing.GroupLayout(pnlScrollArt);
pnlScrollArt.setLayout(pnlScrollArtLayout);
pnlScrollArtLayout.setHorizontalGroup(
pnlScrollArtLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollListarArt, javax.swing.GroupLayout.DEFAULT_SIZE, 884, Short.MAX_VALUE)
);
pnlScrollArtLayout.setVerticalGroup(
pnlScrollArtLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(pnlScrollArtLayout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollListarArt, javax.swing.GroupLayout.DEFAULT_SIZE, 363, Short.MAX_VALUE)
.addContainerGap())
);

jPanel6.setBackground(new java.awt.Color(255, 255, 255));

jLabel1.setFont(new java.awt.Font("SansSerif", 1, 20)); // NOI18N
jLabel1.setForeground(new java.awt.Color(102, 102, 102));
jLabel1.setHorizontalAlignment(javax.swing.SwingConstants.LEFT);
jLabel1.setText("LISTAR ARTICULOS");

javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
jPanel6.setLayout(jPanel6Layout);
jPanel6Layout.setHorizontalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addContainerGap()
.addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
jPanel6Layout.setVerticalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(0, 6, Short.MAX_VALUE))
);

lblCerrar.setBackground(new java.awt.Color(255, 255, 255));
lblCerrar.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
lblCerrar.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/cerrar6.png"))); // NOI18N
lblCerrar.setToolTipText("Cerrar ventana");
lblCerrar.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
lblCerrar.setOpaque(true);
lblCerrar.setPreferredSize(new java.awt.Dimension(28, 28));
lblCerrar.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
lblCerrarMouseClicked(evt);
}
public void mouseEntered(java.awt.event.MouseEvent evt) {
lblCerrarMouseEntered(evt);
}
public void mouseExited(java.awt.event.MouseEvent evt) {
lblCerrarMouseExited(evt);
}
});

jPanel2.setBackground(new java.awt.Color(255, 255, 255));
jPanel2.setPreferredSize(new java.awt.Dimension(248, 45));

txtBuscarArticulo.setBackground(new java.awt.Color(255, 255, 255));
txtBuscarArticulo.setFont(new java.awt.Font("SansSerif", 0, 13)); // NOI18N
txtBuscarArticulo.setForeground(new java.awt.Color(102, 102, 102));
txtBuscarArticulo.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(204, 204, 204), 1, true));
txtBuscarArticulo.setPreferredSize(new java.awt.Dimension(61, 28));

jLabel14.setBackground(new java.awt.Color(242, 242, 242));
jLabel14.setFont(new java.awt.Font("SansSerif", 0, 14)); // NOI18N
jLabel14.setForeground(new java.awt.Color(102, 102, 102));
jLabel14.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/busqueda.png"))); // NOI18N
jLabel14.setText("Buscar");
jLabel14.setToolTipText("Buscar");
jLabel14.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(220, 220, 220), 1, true));
jLabel14.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
jLabel14.setOpaque(true);
jLabel14.setPreferredSize(new java.awt.Dimension(0, 26));

javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
.addComponent(txtBuscarArticulo, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGap(2, 2, 2)
.addComponent(jLabel14, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(jLabel14, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txtBuscarArticulo, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE))
.addContainerGap(9, Short.MAX_VALUE))
);

jPanel3.setBackground(new java.awt.Color(255, 255, 255));
jPanel3.setPreferredSize(new java.awt.Dimension(248, 34));

btnEliminarArticulo.setBackground(new java.awt.Color(242, 242, 242));
btnEliminarArticulo.setFont(new java.awt.Font("SansSerif", 1, 12)); // NOI18N
btnEliminarArticulo.setForeground(new java.awt.Color(102, 102, 102));
btnEliminarArticulo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/eliminar1.png"))); // NOI18N
btnEliminarArticulo.setText("Eliminar");
btnEliminarArticulo.setToolTipText("Eliminar registro seleccionado");
btnEliminarArticulo.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(204, 204, 204), 1, true));
btnEliminarArticulo.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
btnEliminarArticulo.setFocusPainted(false);
btnEliminarArticulo.setFocusable(false);
btnEliminarArticulo.setPreferredSize(new java.awt.Dimension(82, 28));
btnEliminarArticulo.setSelected(true);

btnNuevoArticulo.setBackground(new java.awt.Color(242, 242, 242));
btnNuevoArticulo.setFont(new java.awt.Font("SansSerif", 1, 12)); // NOI18N
btnNuevoArticulo.setForeground(new java.awt.Color(102, 102, 102));
btnNuevoArticulo.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/nuevo1.png"))); // NOI18N
btnNuevoArticulo.setText("Nuevo");
btnNuevoArticulo.setToolTipText("Nuevo registro");
btnNuevoArticulo.setBorder(new javax.swing.border.LineBorder(new java.awt.Color(204, 204, 204), 1, true));
btnNuevoArticulo.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
btnNuevoArticulo.setFocusPainted(false);
btnNuevoArticulo.setFocusable(false);
btnNuevoArticulo.setPreferredSize(new java.awt.Dimension(71, 28));
btnNuevoArticulo.setSelected(true);

btnEditarArt.setBackground(new java.awt.Color(242, 242, 242));
btnEditarArt.setFont(new java.awt.Font("SansSerif", 1, 12)); // NOI18N
btnEditarArt.setForeground(new java.awt.Color(102, 102, 102));
btnEditarArt.setIcon(new javax.swing.ImageIcon(getClass().getResource("/img/seleccionar1.png"))); // NOI18N
btnEditarArt.setText("Editar");
btnEditarArt.setToolTipText("Editar registro seleccionado");
btnEditarArt.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(204, 204, 204)));
btnEditarArt.setCursor(new java.awt.Cursor(java.awt.Cursor.HAND_CURSOR));
btnEditarArt.setFocusPainted(false);
btnEditarArt.setFocusable(false);
btnEditarArt.setPreferredSize(new java.awt.Dimension(0, 28));
btnEditarArt.setSelected(true);
btnEditarArt.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
btnEditarArtMouseClicked(evt);
}
});

javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnEliminarArticulo, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(2, 2, 2)
.addComponent(btnEditarArt, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(2, 2, 2)
.addComponent(btnNuevoArticulo, javax.swing.GroupLayout.PREFERRED_SIZE, 113, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel3Layout.createSequentialGroup()
.addGroup(jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(btnEditarArt, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnNuevoArticulo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnEliminarArticulo, javax.swing.GroupLayout.PREFERRED_SIZE, 28, javax.swing.GroupLayout.PREFERRED_SIZE))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);

jSeparator1.setBackground(new java.awt.Color(75, 126, 138));
jSeparator1.setForeground(new java.awt.Color(204, 204, 204));

javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jSeparator1)
.addGroup(javax.swing.GroupLayout.Alignment.LEADING, jPanel1Layout.createSequentialGroup()
.addComponent(jPanel6, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(lblCerrar, javax.swing.GroupLayout.PREFERRED_SIZE, 38, javax.swing.GroupLayout.PREFERRED_SIZE))
.addComponent(jPanel2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 884, Short.MAX_VALUE)
.addComponent(jPanel3, javax.swing.GroupLayout.DEFAULT_SIZE, 884, Short.MAX_VALUE)
.addComponent(pnlScrollArt, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 884, Short.MAX_VALUE))
.addContainerGap())
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblCerrar, javax.swing.GroupLayout.PREFERRED_SIZE, 29, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jPanel6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(pnlScrollArt, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addContainerGap())
);

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 896, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 526, Short.MAX_VALUE)
);

pack();
}// </editor-fold>

private void lblCerrarMouseClicked(java.awt.event.MouseEvent evt) {
cerrarVent();
}

private void lblCerrarMouseEntered(java.awt.event.MouseEvent evt) {
hoverlbl.hoverEntCer(lblCerrar);
}

private void lblCerrarMouseExited(java.awt.event.MouseEvent evt) {
hoverlbl.hoverExitV(lblCerrar);
}

private void btnEditarArtMouseClicked(java.awt.event.MouseEvent evt) {

}


// Variables declaration - do not modify
public javax.swing.JButton btnEditarArt;
public javax.swing.JButton btnEliminarArticulo;
public javax.swing.JButton btnNuevoArticulo;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel14;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel6;
public static javax.swing.JScrollPane jScrollListarArt;
private javax.swing.JSeparator jSeparator1;
private javax.swing.JLabel lblCerrar;
private javax.swing.JPanel pnlScrollArt;
public static javax.swing.JTable tblArticulos;
private javax.swing.JTextField txtBuscarArticulo;
// End of variables declaration
}

Aquí tenemos parte del código de la vista ArticulosCrearForm

package vistas.articulos;

import DAO.ArticulosDao;
import DAO.CategoriasDao;
import DAO.TipoArticulosDao;
import DAO.UbicacionesDao;
import DAO.UnidadMedidaDao;
import com.placeholder.PlaceHolder;
import controlador.ArticulosCtrl;
import controlador.UbicacionesCtrl;
import entidades.Articulos;
import entidades.Ubicaciones;
import java.awt.Component;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JDialog;
import javax.swing.JOptionPane;
import utilidades.HoverBotones;
import utilidades.StyleComboBox;

/**
*
* @author DIEGO
*/
public class ArticulosCrearForm extends javax.swing.JDialog {

Articulos mod_a = new Articulos();

Ubicaciones ub = null;
UbicacionesDao ubdao = null;
UbicacionesCtrl ubctrl = null;
ArticulosDao artdao = null;
ArticulosCtrl arctrl = null;

HoverBotones hoverlbl = new HoverBotones();

int px, py;
public int disponible;
int dato;
String numero;
String serie;

public ArticulosCrearForm(){

}

public ArticulosCrearForm(java.awt.Frame parent, boolean modal) {
super(parent, modal);

this.setUndecorated(true);

initComponents();

this.setLocationRelativeTo(null);

txtIdArt.setEditable(false);
txtSkuArt.setEditable(false);
radioSi.setEnabled(false);
radioNo.setEnabled(false);

//holders();
estilosCombo();
comboTipoArt();
comboUnidadMed();
comboCategorias();
comboUbicaciones();
//tabularCampos();
//generarNumId();
mostrarSerie();
valorPorDefecto();
}

Aquí tenemos parte del código del controlador llamado ArticulosCtrl

package controlador;

import DAO.ArticulosDao;
import entidades.Articulos;
import entidades.Categorias;
import entidades.TipoArticulos;
import entidades.Ubicaciones;
import entidades.UnidadMedida;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.event.InternalFrameEvent;
import javax.swing.event.InternalFrameListener;
import javax.swing.table.DefaultTableModel;
import vistas.articulos.ArticulosCrearForm;
import vistas.articulos.ArticulosListarForm;
import vistas.util.UbicacionesForm;
import vistas.util.UnidadMedidaForm;

/**
*
* @author DIEGO
*/
public class ArticulosCtrl implements ActionListener, InternalFrameListener{

Articulos art = new Articulos();
ArticulosDao artdao = new ArticulosDao();
ArticulosCrearForm artfrm = new ArticulosCrearForm();
ArticulosListarForm listfrm = new ArticulosListarForm();

TipoArticulos tipoart = null;
Categorias cate = null;
Ubicaciones ubica = null;
UnidadMedida unidad = null;

int dato;
String numero;
String num_serie;
int confirmacion;

DefaultTableModel modelo = new DefaultTableModel();

public ArticulosCtrl(){

}

public ArticulosCtrl(ArticulosCrearForm artfrm, ArticulosListarForm listfrm){
this.artfrm = artfrm;
this.listfrm = listfrm;

this.artfrm.btnGuardarArt.addActionListener((ActionListener)this);
this.artfrm.btnActualizarArt.addActionListener((ActionListener)this);
this.artfrm.btnNuevoArt.addActionListener((ActionListener)this);
this.artfrm.btnGenerarSku.addActionListener((ActionListener)this);

this.listfrm.btnEditarArt.addActionListener((ActionListener)this);
}

@Override
public void actionPerformed(ActionEvent e) {
//Acciones del formulario Articulos Crear
if(e.getSource() == artfrm.btnGuardarArt){
String sk = artfrm.txtSkuArt.getText().trim();

if(sk == null || sk.isEmpty()){
JOptionPane.showMessageDialog(null, "Debe generar un Sku");

}
else{
guardarRegistro();

if (artfrm.radioSi.isSelected()) {
artfrm.disponible = 1;
} else if (artfrm.radioNo.isSelected()) {
artfrm.disponible = 0;
}
}
}

if(e.getSource() == artfrm.btnActualizarArt){
editarRegistro();
}

if(e.getSource() == artfrm.btnNuevoArt){
nuevo();
artfrm.valorPorDefecto();
mostrarSerie();
}

if(e.getSource() == artfrm.btnGenerarSku){
generarSku();
}

//Acciones del formulario Articulos Listar
if(e.getSource() == listfrm.btnEditarArt){

new ArticulosCrearForm(new Frame(), true).setVisible(true);
}
}

Este es la clase MAIN encargada de iniciar la aplicación

package main;

import controlador.ArticulosCtrl;
import java.awt.event.ComponentListener;
import vistas.VentanaPrincipal;
import vistas.articulos.ArticulosAgregarForm;
import vistas.articulos.ArticulosCrearForm;
import vistas.articulos.ArticulosListarForm;

public class MainSiremt {

public static void main(String args[]){

ArticulosCrearForm artfrm = new ArticulosCrearForm();
ArticulosListarForm frm = new ArticulosListarForm();
VentanaPrincipal vprincipal = new VentanaPrincipal();

ArticulosCtrl ctrl = new ArticulosCtrl(artfrm, frm);

vprincipal.setVisible(true);

}

}

Estaré atento para aclarar dudas sobre el código expuesto o para pasar una información mas completa del proyecto por algún archivo de ser necesario.

De antemano les agradezco por sus ayudas y felicitarlos por este gran comunidad
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder