You are on page 1of 3

package ups.edu.ec.simplex.

interfaz;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.table.DefaultTableModel;

import ups.edu.ec.simplex.metodos.Metodos;

import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import javax.swing.JScrollBar;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class VentanaPrincipal extends JFrame {

private JPanel contentPane;


private JTextField txtVariables;
private JTable table;
private JScrollPane jscroll;
private DefaultTableModel modelTabla;
private Metodos metodos;
private JTextField txtFilas;

/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
VentanaPrincipal frame = new VentanaPrincipal();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}

/**
* Create the frame.
*/
public VentanaPrincipal() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 887, 503);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
metodos= new Metodos();

String datos[][] = {{"sss","sdfg","y"},{"rtt","tttt","R"}};


String cabecera[] = {"ok","ok","ok"};

// modelTabla = new DefaultTableModel(datos, cabecera);

JLabel lblNumeroDeVariables = new JLabel("Numero de Variables de


desición: ");
lblNumeroDeVariables.setBounds(75, 30, 288, 29);
contentPane.add(lblNumeroDeVariables);

txtVariables = new JTextField();


txtVariables.setBounds(325, 35, 114, 19);
contentPane.add(txtVariables);
txtVariables.setColumns(10);

JButton btnGenerarCampos = new JButton("Generar Campos");


btnGenerarCampos.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {

String numVariables= txtVariables.getText().trim();


int numVari= Integer.parseInt(numVariables);
String numFilas = txtFilas.getText().trim();
int numFil=Integer.parseInt(numFilas);

String cabecera[] = new String[numVari+numFil+1];


String datos[][] = new String [numFil][2];

for (int i = 0,j=0; i < cabecera.length; i++) {


cabecera[0]= "Base";
if(i>=1 && i<=numVari) {
cabecera[i]=""+(char)(87+i);
}else if (i>numVari) {
cabecera[i]=""+(char)(72+j);
datos[j][0]=""+(char)(72+j);
j++;
}
datos[datos.length-1][0]="Z";
cabecera[cabecera.length-1]="V. Solucion";
}
table.setModel(new DefaultTableModel(datos,cabecera));

}
});
btnGenerarCampos.setBounds(617, 29, 167, 25);
contentPane.add(btnGenerarCampos);

table = new JTable(datos,cabecera);


// table.setBounds(93, 142, 641, 203);
// table.setModel(modelTabla);
//
// contentPane.add(table);

// jscroll = new JScrollPane(table);


// jscroll.setPreferredSize(new Dimension(400,150));
// contentPane.add(jscroll);

JScrollPane scrollPane = new JScrollPane(table);


scrollPane.setBounds(40, 186, 800, 200);
contentPane.add(scrollPane);

JButton btnResultado = new JButton("Obtener Resultado");


btnResultado.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
int totalVaribalesDes =
Integer.parseInt(txtVariables.getText().trim());
for (int i = 0; i < 3; i++) {

int numPivote =
metodos.sacarPosPivote(table.getModel(),totalVaribalesDes);

int numPivoteFila= metodos.sacarFila(table.getModel(),


numPivote);

System.out.println("Este es el pivote ="+numPivote+" fila=


"+numPivoteFila);

metodos.calcularMetodoSimplex(table.getModel(),numPivote,numPivoteFila);

}
}
});
btnResultado.setBounds(418, 410, 167, 25);
contentPane.add(btnResultado);

JLabel lblNumeroDeFilas = new JLabel("Numero de filas:");


lblNumeroDeFilas.setBounds(171, 84, 135, 15);
contentPane.add(lblNumeroDeFilas);

txtFilas = new JTextField();


txtFilas.setBounds(325, 82, 114, 19);
contentPane.add(txtFilas);
txtFilas.setColumns(10);
}
}

You might also like