RESPONDER UNA PREGUNTA

Si para responder la pregunta, crees necesario enviar un archivo adjunto, puedes hacerlo a traves del correo [email protected]

    Pregunta:  66116 - AYUDA SOBRE EL JOPTIONPANE.SHOWMESSAGEDIALOG JAVA NETBEANS
Autor:  Cristian Andres Sanchez Abaunza
Hola excelente comunidad de la web del programador, Tengo un problemita programando en java con netbeans, Veran, Debo hacer un programa que lea una informacion de un txt y la introdusca en netbeans, Mi programa capturara los nombres y las notas de una materia de un grupo universitario, De hecho yo ya hice todo el programa en netbeans y me quedo perfecto, Aqui esta todo el algoritmo para ello:

ClaseEstudiante:

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package arreglo_s3at;

/**
*
* @author Estudiantes
*/
public class ClaseEstudiante {
private String nombre;
private double notadelaasistencia;
private double notadeltaller;
private double notadelparcial;

/**
* @return the nombre
*/
public String getNombre() {
return nombre;
}

/**
* @param nombre the nombre to set
*/
public void setNombre(String nombre) {
this.nombre = nombre;
}

/**
* @return the notadelaasistencia
*/
public double getNotadelaasistencia() {
return notadelaasistencia;
}

/**
* @param notadelaasistencia the notadelaasistencia to set
*/
public void setNotadelaasistencia(double notadelaasistencia) {
this.notadelaasistencia = notadelaasistencia;
}

/**
* @return the notadeltaller
*/
public double getNotadeltaller() {
return notadeltaller;
}

/**
* @param notadeltaller the notadeltaller to set
*/
public void setNotadeltaller(double notadeltaller) {
this.notadeltaller = notadeltaller;
}

/**
* @return the notadelparcial
*/
public double getNotadelparcial() {
return notadelparcial;
}

/**
* @param notadelparcial the notadelparcial to set
*/
public void setNotadelparcial(double notadelparcial) {
this.notadelparcial = notadelparcial;
}

public double getdefinitiva(){
double notafinaldeasistencia;
notafinaldeasistencia=(getNotadelaasistencia()*10)/100;
double notafinaldeltaller;
notafinaldeltaller=(getNotadeltaller()*30)/100;
double notafinaldelparcial;
notafinaldelparcial=(getNotadelparcial()*60)/100;
double notadefinita;
notadefinita=notafinaldeasistencia + notafinaldeltaller + notafinaldelparcial;
return notadefinita;
}
}

Clase Principal De Mi Programa:

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package arreglo_s3at;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import javax.swing.JOptionPane;

/**
*
* @author Estudiantes
*/
public class Arreglo_S3AT {

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
ClaseEstudiante[] estudiantes;
estudiantes=new ClaseEstudiante[22];

String rutadelarchivo;
rutadelarchivo=JOptionPane.showInputDialog("Digite la ruta o ubicacion del archivo, Ejemplo(C:/Program Files/7-Zip/readme.txt):");

FileReader manejadorarchivo;

try{
manejadorarchivo=new FileReader(rutadelarchivo);
}catch(FileNotFoundException err){
JOptionPane.showMessageDialog(null, "No se encuentra el archivo
" + err.getMessage());
return;
}

BufferedReader buffertexto;
buffertexto=new BufferedReader(manejadorarchivo);

int casilla;
casilla=0;
while(casilla String lineatexto;
try{
lineatexto=buffertexto.readLine();
}catch(IOException err){
JOptionPane.showMessageDialog(null, err.getMessage());
return;
}
if(lineatexto ==null){
break;
}else{
String[] cadenas;
cadenas=lineatexto.split(";");

double notadeasistencia;
notadeasistencia=Double.parseDouble(cadenas[1]);
double notadeltaller;
notadeltaller=Double.parseDouble(cadenas[2]);
double notadelparcial;
notadelparcial=Double.parseDouble(cadenas[3]);

estudiantes[casilla]= new ClaseEstudiante();
estudiantes[casilla].setNombre(cadenas[0]);
estudiantes[casilla].setNotadelaasistencia(notadeasistencia);
estudiantes[casilla].setNotadeltaller(notadeltaller);
estudiantes[casilla].setNotadelparcial(notadelparcial);
}
casilla++;
}
double promediodetodoelsalon;
casilla=0;
promediodetodoelsalon=0;
while(casilla promediodetodoelsalon=promediodetodoelsalon + estudiantes[casilla].getdefinitiva()/22;
casilla++;
}
String mostrar;
mostrar="";
casilla=0;
while(casilla mostrar=mostrar + "Aqui se esta mostrando toda la informacion del siguiente estudiante:
" + "Su nombre completo es: " + estudiantes[casilla].getNombre() + "
" + "Su nota de asistencia es: " + estudiantes[casilla].getNotadelaasistencia() + "
" + "Su nota del taller es: " + estudiantes[casilla].getNotadeltaller() + "
" + "Su nota del parcial es: " + estudiantes[casilla].getNotadelparcial() + "
" + "y su definitiva es: " + estudiantes[casilla].getdefinitiva() + "

";
casilla++;
}
JOptionPane.showMessageDialog(null, mostrar + "El promedio de todo el salon es: " + promediodetodoelsalon);
}
}

El programa me funciona a las mil maravillas pero el problema es que el joptionpane.showmessagedialog ME SALE ENORME a lo vertical y solo puedo ver toda la informacion de 3 estudiantes, Yo necesito que el joptionpane se expanda a lo horizontal y me muestre en la esquina superior izquierda toda la informacion de un estudiante, Luego en la mitad la informacion de otro y luego en la esquina superior derecha la informacion de otro y luego baje dos espacios y repita el mismo procedimiento, Yo se que esto se puede hacer pero no tengo la mas minima idea de como debo hacerlo, Me podrian ayudar por favor? Gracias, Se los agradesco mucho


Nombre
Apellidos
Correo
Comentarios