Foros del Web » Programación para mayores de 30 ;) » Java »

Aplicación java con interfaz antigua?

Estas en el tema de Aplicación java con interfaz antigua? en el foro de Java en Foros del Web. Hola Pues el caso es que estoy haciendo un programilla para un señor mayor, que está acostumbrado a usar uno del año de la tana, ...
  #1 (permalink)  
Antiguo 05/10/2014, 08:06
 
Fecha de Ingreso: mayo-2013
Mensajes: 41
Antigüedad: 11 años
Puntos: 0
Aplicación java con interfaz antigua?

Hola

Pues el caso es que estoy haciendo un programilla para un señor mayor, que está acostumbrado a usar uno del año de la tana, que solo funciona con el teclado, y la verdad es que para lla funcionalidad que el necesita es lo mejor.

El caso es que el quiere un formulario, donde introducir datos, pero para pasar de campo a campo no quiere usar el ratón sino que pase con el teclado al pulsar una tecla y además que vuelva hacia atras. Osea que si está en el primer campo y se quiere posicionar en el segundo le de una tecla, por ejemplo el tabulador, pero si quiere volver al campo anterior también con una tecla, como las pantallas antiguas de MS-dos

¿Se os ocurre como hacer esto?

Gracias
Un saludo
  #2 (permalink)  
Antiguo 05/10/2014, 10:07
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: Aplicación java con interfaz antigua?

Hola:

¿Tiene ventanas la aplicación o es modo texto como antiguamente?

Si tienes ventanas, el tabulador ya va por defecto de un control a otro y con shift-tabulador se va hacia atrás, sólo es cuestión de ordenar los campos adecuadamente.

Si es con interfaz de texto, eso se hacía antiguamente con los caracteres ANSI. Son caracteres especiales que al sacarlos por una ventana de comandos en vez de escribirse "hace cosas", como cambiar el color de la letra o cambiar la posición del cursor. Echa un ojo a esto http://www.chuidiang.com/clinux/ansi/ansi.php

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 06/10/2014, 13:41
 
Fecha de Ingreso: mayo-2013
Mensajes: 41
Antigüedad: 11 años
Puntos: 0
Respuesta: Aplicación java con interfaz antigua?

Si, tiene unas ventanitas en swing que he hecho yo.

El shitf-tabulador no se puede capturar y sustutir por otra tecla? lo de las combinaciones creo que va a ser demasiado para el...
  #4 (permalink)  
Antiguo 07/10/2014, 00:48
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Aplicación java con interfaz antigua?

Buenas,

Puedes capturar el key event normalmente y hacer que pase al siguiente elemento llamando al metodo transferFocus().

Código Java:
Ver original
  1. public void keyTyped(KeyEvent e) {                  
  2.         if(e.getKeyChar() == KeyEvent.MI_TECLA){
  3.             e.getSource().transferFocus();
  4.         }              
  5. }

*Lo he escrito sin probar, por lo que puede necesitar algun ajuste

Un saludo
__________________
If to err is human, then programmers are the most human of us
  #5 (permalink)  
Antiguo 09/10/2014, 06:59
 
Fecha de Ingreso: mayo-2013
Mensajes: 41
Antigüedad: 11 años
Puntos: 0
Respuesta: Aplicación java con interfaz antigua?

Hola,

Creo que estoy haciendo algo mal, en mi vetana he implementado el key listener de la forma
MirClase extends JFrame implements MouseListener
Y agrego los métodos no implementados, y en el keyPress le pongo que muestre un texto por sysout al pulsar cualquier tecla, lo arranco, pulso teclas, pero nunca llega ahi ¿que estoy haciendo mal?

Gracias
  #6 (permalink)  
Antiguo 09/10/2014, 07:48
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Aplicación java con interfaz antigua?

MouseListener?????????????????????????????


Código Java:
Ver original
  1. class MyPanel extends JPanel implements KeyListener {
  2.     private char c = 'e';
  3.  
  4.     public MyPanel() {
  5.         this.setPreferredSize(new Dimension(500, 500));
  6.         addKeyListener(this);
  7.     }
  8.  
  9.     public void addNotify() {
  10.         super.addNotify();
  11.         requestFocus();
  12.     }
  13.  
  14.     public void paintComponent(Graphics g) {
  15.         g.clearRect(0, 0, getWidth(), getHeight());
  16.         g.drawString("the key that pressed is " + c, 250, 250);
  17.     }
  18.  
  19.     public void keyPressed(KeyEvent e) { }
  20.     public void keyReleased(KeyEvent e) { }
  21.     public void keyTyped(KeyEvent e) {
  22.         c = e.getKeyChar();
  23.         repaint();
  24.     }
  25.  
  26.     public static void main(String[] s) {
  27.         JFrame f = new JFrame();
  28.         f.getContentPane().add(new MyPanel());
  29.         f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  30.         f.pack();
  31.         f.setVisible(true);
  32.     }
  33. }

http://docs.oracle.com/javase/tutori...ylistener.html
__________________
If to err is human, then programmers are the most human of us
  #7 (permalink)  
Antiguo 09/10/2014, 08:35
 
Fecha de Ingreso: mayo-2013
Mensajes: 41
Antigüedad: 11 años
Puntos: 0
Respuesta: Aplicación java con interfaz antigua?

Perdón que se me ha escapado copiar el de después que estaba probando con el ratón.

Lo que tengo es

Código:
public class InsertarAsiento extends JFrame implements KeyListener

	@Override
	public void keyPressed(KeyEvent arg0) {
		System.out.println("Presionado");
		
	}

	@Override
	public void keyReleased(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void keyTyped(KeyEvent arg0) {
		// TODO Auto-generated method stub
		
	}
Y así no sale nada en la consola

Etiquetas: formulario, interfaz
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:07.