Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - marixxaa

#1
Java / Confusión con el gestor GridBagLayout
20 Enero 2016, 22:27 PM
Hola! estoy intentando acomadar un JList en el marco, pero no tengo éxito, siempre queda en la misma posición, alguien me puede dar una ayuda? muchisimas gracias desde ya.

El código deja posicionado de esta manera al JList:



Y lo que yo deseo es esto:




String obrasSociales[] = { "Osde", "Osecac", "Galeno", "Swiss Medical"};
JList obraSocial =new JList(obrasSociales);
obraSocial.setVisibleRowCount(2);
ManejadorJList manejadorJList=new ManejadorJList();
obraSocial.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
JScrollPane scrollPane = new JScrollPane(obraSocial);
cuenta=new JTextField("",10);
nombre = new JTextField("",10);
apellido = new JTextField("",10);
dni = new JTextField("",10);
cuentaLabel = new JLabel("Cuenta");
nombreLabel = new JLabel("Nombre");
apellidoLabel = new JLabel("Apellido");
dniLabel = new JLabel("Dni");
ingresar= new JButton("Ingresar");
modificar= new JButton("Modificar");
vacio=new JLabel(" ");

GridBagLayout gbl=new GridBagLayout();
GridBagConstraints gbc=new GridBagConstraints();
FlowLayout flowLayout1=new FlowLayout();
setLayout(gbl);




gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.anchor=GridBagConstraints.WEST;
gbc.gridwidth=1;
gbc.insets=new Insets(0,0,0,0);
add(cuentaLabel, gbc);

gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.anchor=GridBagConstraints.WEST;
gbc.insets=new Insets(0,0,0,0);
gbc.gridwidth = GridBagConstraints.REMAINDER;
add(cuenta, gbc);


gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.anchor=GridBagConstraints.WEST;
gbc.gridwidth=1;
gbc.insets=new Insets(0,0,0,0);
add(nombreLabel, gbc);
gbc.gridwidth = GridBagConstraints.REMAINDER;
add(nombre, gbc);

gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.anchor=GridBagConstraints.WEST;
gbc.gridwidth=1;
gbc.insets=new Insets(0,0,0,0);
add(apellidoLabel, gbc);
gbc.gridwidth = GridBagConstraints.REMAINDER;
add(apellido, gbc);

gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.anchor=GridBagConstraints.WEST;
gbc.gridwidth=1;
gbc.insets=new Insets(0,0,0,0);
add(dniLabel, gbc);
gbc.gridwidth = GridBagConstraints.REMAINDER;
add(dni, gbc);


gbc.fill=GridBagConstraints.HORIZONTAL;
gbc.anchor=GridBagConstraints.WEST;
gbc.gridwidth=1;
gbc.insets=new Insets(0,0,0,0);
add(ingresar, gbc);
gbc.fill=GridBagConstraints.NONE;
add(modificar,gbc);


Muchas gracias desde ya!!!
#2
Funciono!!! te lo re agradezco. Pase todo el día con esto y vos me lo solucionaste, un genio, abrazo.
#3
Cita de: 0xFer en 19 Enero 2016, 04:43 AM
Tu código es muy difícil de leer, te recomiendo utilizar la indentación porque la verdad yo no entendí nada. Te dejo una solución al problema que planteas:

Código (java) [Seleccionar]
try{
            /*Archivo a leer*/
            String cadena;
            File fileLectura = new File("Altas.txt");
            FileReader f = new FileReader(fileLectura);
            BufferedReader bf = new BufferedReader(f);
           
            /*Archivo a escribir*/
            FileWriter fileEscritura = new FileWriter("Altas2.txt");
            PrintWriter pw = new PrintWriter(fileEscritura);
         
            /*Leer y escribir*/
            while((cadena = bf.readLine())!=null){
                String CadenaSal = "";
                String[] letras = cadena.split(",");
               
                for( int i = 0; i < letras.length;i++){
                   
                    if( i != (letras.length - 1) )
                        CadenaSal += letras[i] + ",";
                    else
                        CadenaSal += letras[i];
                }
                pw.println(CadenaSal);
            }
            bf.close();
            pw.close();
        }
        catch(IOException IOErr){
            IOErr.printStackTrace();
        }



muchisimas gracias! perdón soy muy vaga para acomodar el codigo, ahora pruebo el codigo que me mandaste, gracias!!!!!
#4
Cita de: 0xFer en 19 Enero 2016, 03:55 AM
No, mejor publica todo  :-(

ok pero es un desastre esto, a penas estoy empezando a programar en java

package Programa;
import java.awt.Component;
import java.awt.FlowLayout; // especifica cómo se van a ordenar los componentes
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Formatter;
import java.util.Scanner;
import java.util.StringTokenizer;
import javax.swing.JFrame; // proporciona las características básicas de una ventana
import javax.swing.JLabel; // muestra texto e imágenes
import javax.swing.JList;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JComboBox;
public class Marco extends JFrame
{
private GridBagLayout esquema;
private GridBagConstraints restricciones;
private JButton ingresar;
private JButton modificar;
private JTextField nombre;
private JTextField apellido;
private JTextField dni;
private JLabel nombreLabel;
private JLabel apellidoLabel;
private JLabel dniLabel;
private JLabel vacio;
private String nombreVar;
private String apellidoVar;
private String dniVar;
private Formatter salida;
private Formatter salidaCopia;
JLabel jUserName = new JLabel("Usuario");
JTextField userName = new JTextField();
JLabel jPassword = new JLabel("Password");
JTextField password = new JPasswordField();
Object[] ob = {jUserName, userName, jPassword, password};
public Marco ()
{
esquema=new GridBagLayout();
setLayout(esquema);
restricciones=new GridBagConstraints();
JMenu archivo=new JMenu ("Archivo");
JMenu altas=new JMenu ("Altas");
JMenuItem crearNuevoArchivo= new JMenuItem ("Crear nuevo archivo");
JMenuItem salir= new JMenuItem ("Salir");
JMenuItem altaEmpleado= new JMenuItem ("Empleado");
nombre = new JTextField("",10);
apellido = new JTextField("",10);
dni = new JTextField("",10);
nombreLabel = new JLabel("Nombre");
apellidoLabel = new JLabel("Apellido");
dniLabel = new JLabel("Dni");
ingresar= new JButton("INGRESAR");
modificar= new JButton("MODIFICAR");
vacio=new JLabel(" ");
nombre.setVisible(false);
modificar.setVisible(false);
apellido.setVisible(false);
dni.setVisible(false);
nombreLabel.setVisible(false);
apellidoLabel.setVisible(false);
dniLabel.setVisible(false);
ingresar.setVisible(false);
archivo.add(crearNuevoArchivo);
archivo.add(salir);
altas.add(altaEmpleado);
JMenuBar barra=new JMenuBar();
setJMenuBar(barra);
barra.add(archivo);
Oyente oyente =new Oyente();
barra.add(altas);
altaEmpleado.addActionListener(
new ActionListener()
{
public void actionPerformed (ActionEvent evento){
nombre.setVisible(true);
apellido.setVisible(true);
dni.setVisible(true);
nombreLabel.setVisible(true);
apellidoLabel.setVisible(true);
dniLabel.setVisible(true);
ingresar.setVisible(true);
modificar.setVisible(true);
}
}
);
modificar.addActionListener(
new ActionListener()
{
public void actionPerformed (ActionEvent evento){
String sCadena;
String linea;
String Cadena;
String Cadena1;
String Cadena2;
String sCadena3;
BufferedReader bf = null;
BufferedReader bf1 = null;
BufferedReader bf3 = null;
try {
bf = new BufferedReader(new FileReader("Altas.txt"));
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
salidaCopia= new Formatter("Altas2.txt");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
while ((sCadena = bf.readLine())!=null) {
//System.out.print(sCadena);
String []tokens=sCadena.split(",");
for (int x=0; x<tokens.length; x++) {
if (x>=3)
x=10;
// System.out.println(tokens[x]);
System.out.println(tokens.length);
if(tokens[x].equals("a"))
tokens[x]="*";
// System.out.println("maria se encontro");
// Cadena=tokens[x];
if(x<2)
salidaCopia.format(tokens[x]+",");
if(x==2){
salidaCopia.format(tokens[x]+"\n\r\n");
}
//x=0,1,2
// a,b,c
}
// salidaCopia.format("\n\r\n");
//System.out.print(tokens[1]);
//System.out.print(tokens[1]);
//System.out.print(tokens[2]);
//salidaCopia.close();
// salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
// ... cleanup that will execute whether or not an error occurred ...
}

salidaCopia.close();

//x=0,1,2
// a,b,c

try {
salida= new Formatter("Altas.txt");
}catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
bf3 = new BufferedReader(new FileReader("Altas2.txt"));
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
while ((sCadena3 = bf3.readLine())!=null) {
//System.out.print(sCadena);
String []tokens=sCadena3.split(",");
for (int x=0; x<tokens.length; x++) {
System.out.printf("dd%d",x);
if(x==3)
x=10;
if(x<2)
salida.format(tokens[x]+",");
if(x==2){
//salida.format(tokens[x]+"\n\r\n");
salida.format(tokens[x]+"\n\r\n");
}
//x=0,1,2
// a,b,c
}
// salidaCopia.format("\n\r\n");
//System.out.print(tokens[1]);
//System.out.print(tokens[1]);
//System.out.print(tokens[2]);
//salidaCopia.close();
// salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]);
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
// ... cleanup that will execute whether or not an error occurred ...
}
salida.close();
}
// salidaCopia.format("\n\r\n");
//System.out.print(tokens[1]);
//System.out.print(tokens[1]);
//System.out.print(tokens[2]);
//salidaCopia.close();
// salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]);


}
);
ingresar.addActionListener(oyente);
crearNuevoArchivo.addActionListener(
new ActionListener()
{
String userNameValue;
String passwordValue;
public void actionPerformed (ActionEvent evento){
int result = JOptionPane.showConfirmDialog(null, ob, "Se requiere autorizacion de ADMIN", JOptionPane.OK_CANCEL_OPTION);
if (result == JOptionPane.OK_OPTION) {
userNameValue = userName.getText();
passwordValue = password.getText();
//Here is some validation code
}
if(!passwordValue.equals("abc")&&(!userNameValue.equals("admin"))){
JOptionPane.showMessageDialog(null, "Acceso: DENEGADO");
}
if (passwordValue.equals("abc")&&(userNameValue.equals("admin"))){
JOptionPane.showMessageDialog(null, "Acceso: CONFIRMADO");
try {
salida= new Formatter("Altas.txt");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
salidaCopia= new Formatter("Altas2.txt");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
);
restricciones.fill=GridBagConstraints.VERTICAL;
agregarComponente(nombre,0,0,1,1);
agregarComponente(apellido,1,0,1,1);
agregarComponente(dni,2,0,1,1);
agregarComponente(nombreLabel,0,1,1,1);
agregarComponente(apellidoLabel,1,1,1,1);
agregarComponente(dniLabel,2,1,1,1);
agregarComponente(vacio,0,2,1,1);
agregarComponente(ingresar,0,3,1,1);
agregarComponente(modificar,1,3,1,1);
}
private void agregarComponente(Component componente, int fila, int columna, int anchura,int altura)
{
restricciones.gridx=columna;
restricciones.gridy=fila;
restricciones.gridwidth=anchura;
restricciones.gridheight=altura;
esquema.setConstraints(componente,restricciones );
add(componente);
}
public class Oyente implements ActionListener
{
public void actionPerformed (ActionEvent evento)
{
String sCadena;
String linea;
String Cadena;
BufferedReader bf = null;
/*
try {
bf = new BufferedReader(new FileReader("Altas.txt"));
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
salidaCopia= new Formatter("Altas2.txt");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
*/
FileWriter fichero = null;
PrintWriter pw = null;

try
{
fichero = new FileWriter("Altas.txt",true);
pw = new PrintWriter(fichero);
int i = 0;
nombreVar=nombre.getText();
apellidoVar=apellido.getText();
dniVar=dni.getText();
if(!nombreVar.equals("0"))
pw.print(nombreVar+","+apellidoVar+","+dniVar+"\n\r\n");
fichero.close();
//pw.println("Linea " + i);
} catch (Exception e) {
e.printStackTrace();
} finally {
// Nuevamente aprovechamos el finally para
// asegurarnos que se cierra el fichero.
if (null != fichero)
//fichero.close();
try {
} catch (Exception e2) {
e2.printStackTrace();
}
}
/*
nombreVar=nombre.getText();
apellidoVar=apellido.getText();
dniVar=dni.getText();
if(!nombreVar.equals("0"))
salida.format(nombreVar+","+apellidoVar+","+dniVar+"\n\r\n");
salidaCopia.format(nombreVar+","+apellidoVar+","+dniVar+"\n\r\n");
*/
//salida.format(nombreVar+"\n");
if(nombreVar.equals("0")){
//System.out.print("0");
//salida.close();
}
/*
try {
while ((sCadena = bf.readLine())!=null) {
linea=sCadena;
System.out.println(sCadena);
String[]tokens=sCadena.split(",");
//System.out.println(sCadena);
System.out.println(tokens[0]);
System.out.println(tokens[1]);
System.out.println(tokens[2]);
if(tokens[1].equals("Ordones")){
tokens[1]="Ordename";
System.out.print("seee");
}
salidaCopia.format(tokens[0]+","+tokens[1]+","+tokens[2]+"\n\r\n");
}
salidaCopia.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
}
}
}
/*
JFrame winMain = new JFrame("Mostrar / Ocultar Jpanel");
winMain.setVisible(true);
winMain.setSize( 400, 400 );
winMain.setDefaultCloseOp eration(JFrame.EXIT_ON_CLOSE);
*/
//System.out.print(nombreVar);
/**************ESTO SIRVE PARA COPIAR TODO UN ARCHIVO A OTRO**********************
StringTokenizer defaultTokenizer = new StringTokenizer(linea);
while (defaultTokenizer.hasMoreTokens())
{
defaultTokenizer.nextElement();
salidaCopia.format(defaultTokenizer.nextToken()+"\n\r");
salidaCopia.format("\n\r");
}
*/
#5
Cita de: 0xFer en 19 Enero 2016, 03:35 AM
Hola, ¿puedes publicar el código del método format?  :-\ o publica todo si no es mucho.

Bienvenida!  ;D
Gracias. No se si esto te sirve

BufferedReader bf = null;
BufferedReader bf1 = null;
BufferedReader bf3 = null;
try {
bf = new BufferedReader(new FileReader("Altas.txt"));
} catch (FileNotFoundException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
salidaCopia= new Formatter("Altas2.txt");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
#6
Hola soy nueva!, disculpen si no me se explicar bien, pero estoy intentando copiar el contenido de un archivo de texto a otro nuevo, dicho contenido es el siguiente:

a,b,c
d,e,f

sCadena contiene cada linea del archivo txt que deseo copiar.
y luego a sCadena lo quiero separar en tokens en un array, el problema es que el siguiente codigo
devuelve:
a,b,c
,d,e,f
,

cuando lo que yo deseo es que lo copie tal cual como estaba
a,b,c
d,e,f

Gracias, y espero respuestas (aunque no se si me explique bien).



while ((sCadena = bf.readLine())!=null) {
String []tokens=sCadena.split(",");
for (int x=0; x<tokens.length; x++) {

if(x<2)
salidaCopia.format(tokens[x]+",");
if(x==2){
salidaCopia.format("tokens[x]+"\n\r\n");
}