Título: Problemas Con Tabla
Publicado por: ZedGe en 26 Noviembre 2011, 22:40 pm
Este Es mi código, al ingresa 12 caracteres se ingresan dentro de la primera fila, y luego la segunda y al otra y la otra. EL problema que al ingresar en las primeras 12, la 13 14 y 15 no se ingresa nada, es mas si se baja desaparecen todas :S, al sacar el Scrollpane y dejar la ventana grande justo para ver las 15 filas no pasa ese problema :S package puntodeventa;
import java.awt.Color; import java.awt.Font; import java.awt.Label; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Vector; import javax.swing.*; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import java.awt.event.KeyEvent; import java.awt.event.KeyListener;
public class tabla extends JFrame implements ActionListener, KeyListener{ String perro; JPanel p1 = new JPanel(null); int productos = 0; JTabbedPane panelConFichas = new JTabbedPane(); private JTextField campoTexto1; private JSpinner spinner; private JLabel etiqueta1; private Label Label5, Label6, Label7, Label8, Label9, Label10, Label11, Label12, Label13; String variableCodigo; String codigos[] = new String[16]; int a = 0; public final static Color Gris = new Color(164, 159, 159); String[] strings = new String[5]; public final static Color GRIS = Gris; private String[][] codigo2 = new String[200][200]; private JScrollPane scpEjemplo;
public tabla() { campoTexto1 = new JTextField( 30 ); campoTexto1.setBounds(250,50,500,50); p1.add( campoTexto1 ); campoTexto1.setFont(new Font("sansserif", Font.BOLD, 40)); campoTexto1.addActionListener(this); spinner = new JSpinner(); spinner.setValue(1); spinner.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { // Ponemos el valor del JSpinner en el JTextField String cantidad; cantidad = spinner.getValue().toString(); } }); spinner.setBounds(750,50,50,50); p1.add( spinner ); etiqueta1 = new JLabel( "VENTA 1", null, SwingConstants.LEFT ); etiqueta1.setBounds(810,30,350,90); p1.add( etiqueta1 ); Label5 = new Label (" CÓDIGO"); Label5.setFont(new Font("sansserif", Font.BOLD, 13)); Label5.setForeground(Color.white); Label5.setBounds(20,120,137,30); p1.add (Label5); Label5.setBackground (Gris); Label6 = new Label (" CANTIDAD"); Label6.setFont(new Font("sansserif", Font.BOLD, 13)); Label6.setForeground(Color.white); Label6.setBounds(158,120,107,30); p1.add (Label6); Label6.setBackground (Gris); Label7 = new Label (" ARTÍCULO "); Label7.setFont(new Font("sansserif", Font.BOLD, 13)); Label7.setForeground(Color.white); Label7.setBounds(266,120,368,30); p1.add (Label7); Label7.setBackground (Gris); Label8 = new Label ("PRECIO UNITARIO"); Label8.setFont(new Font("sansserif", Font.BOLD, 13)); Label8.setForeground(Color.white); Label8.setBounds(635,120,125,30); p1.add (Label8); Label8.setBackground (Gris); Label9 = new Label (" IMPORTE"); Label9.setFont(new Font("sansserif", Font.BOLD, 13)); Label9.setForeground(Color.white); Label9.setBounds(761,120,120,30); p1.add (Label9); Label9.setBackground (Gris);
panelConFichas.setFont(new Font("sansserif", Font.BOLD, 18)); panelConFichas.addTab(" Venta 1 ", null, p1, "Venta 1"); getContentPane().add(panelConFichas);
campoTexto1.addKeyListener(this); } //cierra el constructor @Override public void keyTyped(KeyEvent e) { } @Override public void keyPressed(KeyEvent e) { }
public void keyReleased(KeyEvent e) {
variableCodigo = campoTexto1.getText(); int longitud=variableCodigo.length(); codigos[a]= variableCodigo;
Vector<String> row1 = new Vector<String>(); row1.addElement(codigos[0]); row1.addElement(codigos[0]); row1.addElement(codigos[0]); row1.addElement(codigos[0]); row1.addElement(codigos[0]); Vector<String> row2 = new Vector<String>(); row2.addElement(codigos[1]); row2.addElement(codigos[1]); row2.addElement(codigos[1]); row2.addElement(codigos[1]); row2.addElement(codigos[1]); Vector<String> row3 = new Vector<String>(); row3.addElement(codigos[2]); row3.addElement(codigos[2]); row3.addElement(codigos[2]); row3.addElement(codigos[2]); row3.addElement(codigos[2]); Vector<String> row4 = new Vector<String>(); row4.addElement(codigos[3]); row4.addElement(codigos[3]); row4.addElement(codigos[3]); row4.addElement(codigos[3]); row4.addElement(codigos[3]); Vector<String> row5 = new Vector<String>(); row5.addElement(codigos[4]); row5.addElement(codigos[4]); row5.addElement(codigos[4]); row5.addElement(codigos[4]); row5.addElement(codigos[4]); Vector<String> row6 = new Vector<String>(); row6.addElement(codigos[5]); row6.addElement(codigos[5]); row6.addElement(codigos[5]); row6.addElement(codigos[5]); row6.addElement(codigos[5]); Vector<String> row7 = new Vector<String>(); row7.addElement(codigos[6]); row7.addElement(codigos[6]); row7.addElement(codigos[6]); row7.addElement(codigos[6]); row7.addElement(codigos[6]); Vector<String> row8 = new Vector<String>(); row8.addElement(codigos[7]); row8.addElement(codigos[7]); row8.addElement(codigos[7]); row8.addElement(codigos[7]); row8.addElement(codigos[7]); Vector<String> row9 = new Vector<String>(); row9.addElement(codigos[8]); row9.addElement(codigos[8]); row9.addElement(codigos[8]); row9.addElement(codigos[8]); row9.addElement(codigos[8]); Vector<String> row10 = new Vector<String>(); row10.addElement(codigos[9]); row10.addElement(codigos[9]); row10.addElement(codigos[9]); row10.addElement(codigos[9]); row10.addElement(codigos[9]); Vector<String> row11 = new Vector<String>(); row11.addElement(codigos[10]); row11.addElement(codigos[10]); row11.addElement(codigos[10]); row11.addElement(codigos[10]); row11.addElement(codigos[10]); Vector<String> row12 = new Vector<String>(); row12.addElement(codigos[11]); row12.addElement(codigos[11]); row12.addElement(codigos[11]); row12.addElement(codigos[11]); row12.addElement(codigos[11]); Vector<String> row13 = new Vector<String>(); row13.addElement(codigos[12]); row13.addElement(codigos[12]); row13.addElement(codigos[12]); row13.addElement(codigos[12]); row13.addElement(codigos[12]); Vector<String> row14 = new Vector<String>(); row14.addElement(codigos[13]); row14.addElement(codigos[13]); row14.addElement(codigos[13]); row14.addElement(codigos[13]); row14.addElement(codigos[13]); Vector<String> row15 = new Vector<String>(); row15.addElement(codigos[14]); row15.addElement(codigos[14]); row15.addElement(codigos[14]); row15.addElement(codigos[14]); row15.addElement(codigos[14]); Vector<Vector> rowData = new Vector<Vector>(); rowData.addElement(row1); rowData.addElement(row2); rowData.addElement(row3); rowData.addElement(row4); rowData.addElement(row5); rowData.addElement(row6); rowData.addElement(row7); rowData.addElement(row8); rowData.addElement(row9); rowData.addElement(row10); rowData.addElement(row11); rowData.addElement(row12); rowData.addElement(row13); rowData.addElement(row14); rowData.addElement(row15); Vector<String> columnNames = new Vector<String>(); columnNames.addElement(" "); columnNames.addElement(" "); columnNames.addElement(" "); columnNames.addElement(" "); columnNames.addElement(" "); JTable table = new JTable(rowData, columnNames); scpEjemplo= new JScrollPane();
table.getColumnModel().getColumn(0).setResizable(false); table.getColumnModel().getColumn(0).setPreferredWidth(50); table.getColumnModel().getColumn(1).setResizable(false); table.getColumnModel().getColumn(1).setPreferredWidth(21); table.getColumnModel().getColumn(2).setResizable(false); table.getColumnModel().getColumn(2).setPreferredWidth(282); table.getColumnModel().getColumn(3).setResizable(false); table.getColumnModel().getColumn(3).setPreferredWidth(40); table.getColumnModel().getColumn(4).setResizable(false); table.getColumnModel().getColumn(4).setPreferredWidth(0); scpEjemplo.add(table); scpEjemplo.setBounds(20,132,862,194); //194 p1.add(table); p1.add(scpEjemplo); scpEjemplo.setViewportView(table);
if( longitud > 12){ if(productos >= 0){ campoTexto1.setText(""); } //JScrollPane pane = new JScrollPane(table); //add(pane, BorderLayout.CENTER); // JScrollPane scrollPane = new JScrollPane(table); // private JTable tblEjemplo; // private JScrollPane scpEjemplo; productos++; longitud=0; variableCodigo=" "; a++; }
} public void actionPerformed(ActionEvent e) { } public static void main(String[] ar) { tabla formulario=new tabla(); formulario.setBounds(0,0,1025,570); formulario.setVisible(true); formulario.setLocation(0,160); formulario.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
} }
Título: Re: Problemas Con Tabla Y ScrollPane
Publicado por: ZedGe en 27 Noviembre 2011, 00:17 am
Note por que pasa eso creo.... Al apretar cualquier tecla o boton o algo el keyPressed funciona Vector<String> row1 o row2 o ropw3.... = new Vector<String>();
vuelve a crear una fila... si la pongo en el constructor no podre usarla abajo, si la pongo como variable static no se que pasa xD... díganme si estoy en lo cierto o no...
Lo arregle dándoles en un principio los valores de codigos[n], ya que al principio son null, solo después se editan y si tienen otro valor se cambia el null por ese valor.
Pero aun al apretarlos con el mause se borran los datos...
Título: Re: Problemas Con Tabla
Publicado por: ZedGe en 27 Noviembre 2011, 05:18 am
PROBLEMA SOLUCIONADO:
Cambie el tipo para crear la tabla y la saque de ese lugar donde cada vez que apretaba algo se creaba encima todo
|