PDF de programación - La entrada/salida de texto en Java es muy general y flexible, pero compleja

Imágen de pdf La entrada/salida de texto en Java es muy general y flexible, pero compleja

La entrada/salida de texto en Java es muy general y flexible, pero complejagráfica de visualizaciones

Actualizado el 28 de Julio del 2017 (Publicado el 14 de Enero del 2017)
2.005 visualizaciones desde el 14 de Enero del 2017
175,5 KB
9 paginas
Creado hace 16a (23/10/2007)
Paquete fundamentos
La entrada/salida de texto en Java es muy general y flexible, pero
compleja
• podemos usar clases que encapsulen las operaciones
El paquete fundamentos (no estándar) contiene las clases:

UNIVERSIDAD
DE CANTABRIA

- Lectura: Para leer datos desde una ventana
- Escritura: Para escribir resultados en una ventana
- Mensaje: Para escribir un texto sencillo en una ventana
- Grafica: Para hacer gráficas de x-y
- Menu: Para presentar varios botones en una ventana y saber cuál

es el que el usuario pulsa

- Dibujo: Proporciona ventana para dibujos e imágenes
- CajaTexto: Para leer texto multilínea

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

1

Lectura

UNIVERSIDAD
DE CANTABRIA

Crea una ventana con el título t

new Lectura (String t)
void creaEntrada(String e,double x) Crea una caja para leer un double
void creaEntrada(String e, int i)
void creaEntrada(String e,String s) Crea una caja para leer un String
void espera (String s)
void espera ()

Crea una caja para leer un int

void esperaYCierra (String s)
void esperaYCierra ()
double leeDouble (String e)
int leeInt (String e)
String leeString (String e)
void println (String)

Muestra un mensaje en su caso, y
espera a que el usuario teclee datos y
pulse aceptar
Igual que espera, pero además cierra
la ventana
Lee un double de la caja de etiqueta e
Lee un int de la caja con etiqueta e
Lee un String de la caja de etiqueta e
Muestra un String en la cabecera

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

2

Ejemplo
Hacer un programa para calcular la distancia entre dos puntos del
globo, y que acepte datos de entrada con Lectura:

UNIVERSIDAD
DE CANTABRIA

import fundamentos.*;

public class Dist {

public static void main(String[] args) {
double dist; // Kilometros
double lon1,lat1,lon2,lat2; // grados

// Puntos 1 y 2
Lectura pantalla = new Lectura("Círculo Máximo");
pantalla.creaEntrada("Latitud 1",0.0);
pantalla.creaEntrada("Longitud 1",0.0);
pantalla.creaEntrada("Latitud 2",0.0);
pantalla.creaEntrada("Longitud 2",0.0);

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

3

Ejemplo (cont.)

UNIVERSIDAD
DE CANTABRIA

pantalla.espera("Introduce coordenadas y pulsa Aceptar");
lat1=pantalla.leeDouble("Latitud 1");
lon1=pantalla.leeDouble("Longitud 1");
lat2=pantalla.leeDouble("Latitud 2");
lon2=pantalla.leeDouble("Longitud 2");
lat1=Math.toRadians(lat1);
lat2=Math.toRadians(lat2);
lon1=Math.toRadians(lon1);
lon2=Math.toRadians(lon2);

dist=Math.toDegrees(Math.acos(Math.sin(lat1)*
Math.sin(lat2)+
Math.cos(lat1)*Math.cos(lat2)*Math.cos(lon1-lon2)))*
60.0*1.852;
pantalla.println("La distancia es: "+dist+" Km");
}
}

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

4

Escritura

UNIVERSIDAD
DE CANTABRIA

new Escritura (String t)
void insertaValor (String e,double x) Crea una caja con la etiqueta y el

Crea una ventana con su título

void insertaValor(String e, int)

void insertaValor(String e,String s) Crea una caja con la etiqueta y el

valor
Crea una caja con la etiqueta y el
valor

valor
Espera a que el usuario pulse
aceptar, y cierra la ventana

void espera ()

En el ejemplo anterior, podríamos cambiar la última línea por:

Escritura res = new Escritura ("Círculo Máximo");
res.insertaValor("Distancia (Km)",dist);
res.espera();

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

5

Mensaje

new Mensaje ()
new Mensaje (String t)

void escribe(String m)

Ejemplo:

UNIVERSIDAD
DE CANTABRIA

Constructor que crea la ventana
Constructor que crea la ventana y le
pone título
Muestra el mensaje y espera a que se
pulse el botón OK

Mensaje mens = new Mensaje();
mens.escribe("Esto es un mensaje");

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

6

Grafica

UNIVERSIDAD
DE CANTABRIA

new Grafica ()

Constructor que crea la ventana con
títulos en blanco
Constructor alternativo que pone los
new Grafica (String titulo,
títulos de la ventana y los ejes X e Y
String tituloX, String tituloY)
void inserta (double x,double y) Inserta el punto (x,y) en la gráf. actual
Crea una nueva gráfica en la misma
void otraGrafica ()
ventana
Pinta todas las gráficas
Pone o quita la opción de mostrar la
gráfica con líneas entre cada punto
Pone o quita la opción de símbolos
en la gráfica actual
Pone el título de la gráfica actual
Pone el color de la gráfica actual

void pinta()
void ponLineas (boolean b)

void ponSimbolo (boolean b)

void ponTitulo (String t)
void ponColor (int c)

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

7

Ejemplo de creación de una gráfica

UNIVERSIDAD
DE CANTABRIA

Grafica g = new Grafica ("Valores","x","y");
// El primer grafico
g.ponSimbolo(true);
g.ponColor(Grafica.azul);
g.ponTitulo("graf1");
g.inserta(x1,y1);
g.inserta(x2,y2);
...
// El segundo grafico
g.otraGrafica();
g.ponColor(Grafica.rojo);
g.ponTitulo("graf2");
g.inserta(p1,q1);
g.inserta(p2,q2);
...
// Pintar las dos gráficas
g.pinta();

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

8

Menu

UNIVERSIDAD
DE CANTABRIA

new Menu (String t)

void insertaOpcion (String e,
int code)
int leeOpcion ()

int leeOpcion (String e)

void println (String s)

Constructor que crea la ventana con
su título
Crea un botón con la etiqueta y el
código numérico indicados
Espera a que el usuario pulse un
botón, y retorna el código numérico
del botón pulsado
Muestra un mensaje, espera a que el
usuario pulse un botón, y retorna el
código numérico del botón pulsado
Muestra un mensaje en la cabecera

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

9

Ejemplo con Menu

UNIVERSIDAD
DE CANTABRIA

Menu menu= new Menu("Prueba de Menu");
int op;

// prepara la lista de opciones
menu.insertaOpcion("Insertar libro",1);
menu.insertaOpcion("Borrar libro",2);
menu.insertaOpcion("Prestar libro",3);
menu.insertaOpcion("Consultar libro",4);
menu.insertaOpcion("Salir",5);

// espera a que el usuario elija una opción
op=menu.leeOpcion("Elige una opcion");

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

10

Dibujo

UNIVERSIDAD
DE CANTABRIA

new Dibujo (String titulo) Constructor que crea la ventana con su

título y tamaño 640x480
Constructor que crea la ventana con su
título y el tamaño indicado
Pinta el dibujo y espera que se pulse OK
Pone el color del lápiz con el que se pinta.

new Dibujo (String titulo,
int alto,int ancho)
void espera()
void ponColorLapiz
(ColorFig color)
void ponRelleno
(ColorFig color)
void ponLetra(int tamaño) Pone el tamaño de la letra del texto dibu-

Pone el color del relleno de las figuras
cerradas

jado
Borra el dibujo poniendo el fondo gris claro.
void borra()
void borra(ColorFig color) Borra el dibujo poniendo el fondo del color

indicado

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

11

UNIVERSIDAD
DE CANTABRIA

Operaciones de
dibujar.

Dibujo (cont.)

void dibujaTexto(String texto,
int xOrigen,int yOrigen)
void dibujaPunto(int x,int y)
void dibujaLinea(int xOrigen,int yOrigen,
int xDestino,int yDestino)
void dibujaLineas (int[] x,int[] y);
void dibujaRectangulo(int x1,int y1,
int x2, int y2)
void dibujaElipse(int x1,int y1,
int x2, int y2)
void dibujaArco(int x1,int y1,
int x2, int y2,int angulo1,int angulo2);
void dibujaPoligono(int[] x, int[] y)
void dibujaImagen(int xOrigen,int yOrigen,
String nombreFichero)

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

12

Colores disponibles

UNIVERSIDAD
DE CANTABRIA

Constantes estáti-
cas de la clase
ColorFig

ColorFig.negro
ColorFig.azul
ColorFig.grisOscuro
ColorFig.gris
ColorFig.verde
ColorFig.grisClaro
ColorFig.magenta
ColorFig.naranja
ColorFig.rosa
ColorFig.rojo
ColorFig.blanco
ColorFig.amarillo

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

13

Ejemplo de Dibujo

UNIVERSIDAD
DE CANTABRIA

Dibujo dib=new Dibujo
("Prueba de dibujo",480,300);

dib.borra(ColorFig.blanco);
dib.ponGrosorLapiz(4);
dib.ponColorLapiz(ColorFig.magenta);

dib.dibujaElipse(50,100,90,140);
dib.dibujaArco(50,200,90,240,-45,45);

dib.dibujaImagen(250,30,"mi-foto.jpg");

dib.espera();
//necesario para que se pinte la ventana

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

14

CajaTexto

UNIVERSIDAD
DE CANTABRIA

new CajaTexto (String s,
int filas,
int columnas)
void espera ()
boolean hayMas()

double leeDouble ()
int leeInt ()
String leeString ()
void avanzaLinea ()

Crea una ventana con el título s, y el tamaño
en caracteres indicado por filas y columnas

Espera a teclear datos y pulsar aceptar
Retorna un booleano indicando si hay mas
líneas por leer o no
Lee un double de la línea actual
Lee un int de la línea actual
Lee un String de la línea actual
Avanza a la siguiente línea

DEPARTAMENTO DE MATEMÁTICAS,
ESTADÍSTICA Y COMPUTACIÓN

© Michael González Harbour

23/oct/07

15

Ejemplo con una caja de texto
Este fragmento de código muestra en pantalla las líneas tecleadas
en una caja de texto

UNIVERSIDAD
DE CANTABRIA

// crea el objeto
CajaTexto caja = new CajaTexto ("Prueba de Caja de
Texto",20,50);

// espera a que el usuario teclee texto
caja.espera();

// lazo para mostr
  • Links de descarga
http://lwp-l.com/pdf991

Comentarios de: La entrada/salida de texto en Java es muy general y flexible, pero compleja (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad