示例#1
0
 protected void processKeyEvent(final KeyEvent e) {
   int id = e.getID();
   switch (id) {
     case KeyEvent.KEY_TYPED:
       KeyEventCZ loKey = new KeyEventCZ(e.getKeyChar());
       moTipo.getTecla(super.getText(), loKey);
       e.setKeyChar(loKey.getKeyChar());
       break;
     case KeyEvent.KEY_PRESSED:
       if (e.getKeyCode() == e.VK_ENTER) {
         e.setKeyCode(0);
         transferFocus();
       }
       if (e.getKeyCode() == e.VK_ESCAPE) {
         e.setKeyCode(0);
         moTipo.restaurarTexto();
         super.setText(moTipo.getText());
       }
       break;
     case KeyEvent.KEY_RELEASED:
       break;
     default:
   }
   super.processKeyEvent(e);
 }
示例#2
0
 /**
  * establecemos el tipo del textbox
  *
  * @param poTipo el tipo de texto
  */
 public void setTipo(final ITipoTexto poTipo) {
   String lsTexto = moTipo.getText();
   String lsTextoO = moTipo.getTextOriginal();
   moTipo = poTipo;
   moTipo.setText(lsTexto);
   moTipo.setTextOriginal(lsTextoO);
 }
示例#3
0
  protected void processFocusEvent(FocusEvent e) {
    boolean lbContinuar = true;
    int id = e.getID();
    switch (id) {
      case FocusEvent.FOCUS_GAINED:
        super.setText(moTipo.getText());
        moBackColor = getBackground();
        setBackgroundP(moBackColorConFoco);
        setSelectionStart(0);
        setSelectionEnd(moTipo.getText().length());
        break;
      case FocusEvent.FOCUS_LOST:
        setBackgroundP(moBackColor);
        String lsTexto = super.getText();
        if (moTipo.isTipoCorrecto(lsTexto)) {
          moTipo.lostFocus(lsTexto);
          super.setText(moTipo.getTextFormateado());
        } else {
          lbContinuar = !moTipo.isTipoCorrectoObligatorio();
          if (lbContinuar) {
            moTipo.lostFocus(lsTexto);
            super.setText(moTipo.getTextFormateado());
          }

          utilesGUI.msgbox.JDialogo.showDialog(null, moTipo.getTextoError(lsTexto));
        }

        // anulamos la seleccion para que solo haya un campo con todo seleccionado
        if (lbContinuar) {
          setSelectionStart(0);
          setSelectionEnd(0);
          ponerColorSiCambio();
        }
        break;
      default:
    }
    super.processFocusEvent(e);
    // no se hace esto pq en windows se mete en un bucle infinito
    //        if(lbContinuar)
    //            super.processFocusEvent(e);
    //        else
    //            this.requestFocus();
  }
示例#4
0
 /**
  * Establece el valor del text y el valor original, para lo del cambio de color si cambia
  *
  * @param poValor valor
  */
 public void setValueTabla(final Object poValor) {
   String lsValor;
   if (poValor == null) {
     lsValor = "";
   } else {
     lsValor = poValor.toString();
   }
   moTipo.setText(lsValor);
   moTipo.setTextOriginal(moTipo.getText());
   super.setText(moTipo.getTextFormateado());
 }
示例#5
0
 public String getText() {
   return moTipo.getText();
 }
示例#6
0
 /**
  * Devuelve si el texto que hay en el componente es del tipo correcto, según mlTipo
  *
  * @return si es correcto
  */
 public boolean isTipoCorrecto() {
   return moTipo.isTipoCorrecto(moTipo.getText());
 }