• Viernes 8 de Noviembre de 2024, 20:54

Autor Tema:  Common Dialog  (Leído 1726 veces)

pmike

  • Miembro activo
  • **
  • Mensajes: 62
    • Ver Perfil
    • http://www.autoresponder.com
Common Dialog
« en: Domingo 16 de Enero de 2005, 20:01 »
0
Hola:
En un control Common Dialog, tengo un problema.
Como puedo controlar el boton cancelar o la x de cerrar ventana para q no siga con las lineas del codigo sucesivamente.

Gracias
pmike
-------------------------------------------------------------

http://www.ebookred.com

-------------------------------------------------------------

tiquinho

  • Miembro activo
  • **
  • Mensajes: 96
    • Ver Perfil
Re: Common Dialog
« Respuesta #1 en: Lunes 17 de Enero de 2005, 10:10 »
0
El CommonDialog tiene una propiedad llamada CancelError. Si esta propiedad tiene el valor True, cuando pulsen el botón Cancelar o cierren con la X, generará un error (el número ahora no lo recuerdo).

Un ejemplillo con el que abrir ejecutables, donde "Carpetas" es el nombre del CommonDialog:

Código: Text
  1.  
  2. Function AbrirEjecutables(Ruta as String)
  3. On Error GoTo FinF        'Con esta línea le indicas que si salta el error salte a la etiqueta "FinF"
  4.  
  5. 'Inicialización de variables
  6. Carpetas.InitDir = Ruta
  7. Carpetas.DefaultExt = "exe"
  8. Carpetas.Filter = "Ejecutables (.exe)|*.exe"
  9. Carpetas.CancelError = True      'Con esta propiedad le indicas al CommonDialog que genere un error si se pulsa el botón Cancelar.
  10.  
  11. Carpetas.ShowOpen     'Lanza la ventana Abrir del CommonDialog
  12.  
  13. On Error GoTo FinF
  14.  
  15. 'A partir de aqui haz lo que sería normal
  16. Shell Carpetas.FileName, vbNormalFocus      
  17.  
  18. FinF:   'Aqui saltará si se pulsa Cancelar
  19. End Function
  20.  
  21.  

Puedes controlar mejor utilizando más etiquetas, o jugando con variables. Tú mismo.
Espero que te sirva!

pmike

  • Miembro activo
  • **
  • Mensajes: 62
    • Ver Perfil
    • http://www.autoresponder.com
Re: Common Dialog
« Respuesta #2 en: Lunes 17 de Enero de 2005, 22:21 »
0
Gracias tiquinho !!!!!!

El problema q tenia es q

On Error GoTo error

 solo lo ponia una vez al principio de la funcion, luego continuaba con el codigo del common Dialog, y demas lineas de codigo sql, entoces al pulsar cancelar me introducía los datos a la bd, y claro ha de ser lo contrario.

He visto que tu lo has escrito 2 veces el Goto error y funciona bien, ademas de poner el objeto.CancelError = True

Un saludo
-------------------------------------------------------------

http://www.ebookred.com

-------------------------------------------------------------

tiquinho

  • Miembro activo
  • **
  • Mensajes: 96
    • Ver Perfil
Re: Common Dialog
« Respuesta #3 en: Martes 18 de Enero de 2005, 12:37 »
0
Vaya, pos ahora que lo dices si que lo tengo 2 veces, ni me había dado cuenta  :nosweat: La verdad es que sin el segundo también debería funcionar (a mi me va bien). No sé entonces pq no te iba a ti  :blink:
Bueno, si por lo menos ahora te va... :whistling: jeje

De todas maneras debería mirarlo, no vaya a ser q tengas algo mal sin saberlo :D

Por cierto, ¿te deja utilizar como nombre de etiqueta "error"??pensé que lo tomaba como palabra clave, o como nombre de un objeto...

pmike

  • Miembro activo
  • **
  • Mensajes: 62
    • Ver Perfil
    • http://www.autoresponder.com
Re: Common Dialog
« Respuesta #4 en: Martes 18 de Enero de 2005, 17:05 »
0
tienes razon con una linea de codigo funciona.

debio ser el objeto.CancelError = True, lo tenía a false y por eso no tiraba.

he probado con On Error GoTo error y a mi me funciona bien

Hasta otra ...
-------------------------------------------------------------

http://www.ebookred.com

-------------------------------------------------------------