Jump to content


Photo

[RESUELTO] Poner aviso al cerrar un formulario


  • Please log in to reply
10 replies to this topic

#1 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 posts
  • LocationEn un solo Lugar

Posted 22 November 2011 - 10:48 PM

hola amigos necesito otra manito con una ayuda, me gustaría saber como puedo poner un mensaje tipo yes or no antes de yo cerrar el formulario en la X (cerrar) del formulario, ya que cuando le doy a la X de cerrar del formulario ella se cierra automáticamente sin preguntar y cuando vuelvo y abro el formulario de nuevo los datos que yo escribí en formulario a parecen de nuevo, como puedo solucionar esto, si pueden ser amable y por favor?
  • 0

#2 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4111 posts
  • LocationMadrid - España

Posted 23 November 2011 - 02:37 AM

Deberás diseñar ese formulario como no autocreado y poner este código de ejemplo en el evento OnClose:



delphi
  1. procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
  2. begin
  3.   Action:= caNone;
  4.   if MessageBox(Handle, 'Cerrar', '¿Desea cerrar?', MB_YESNO + MB_ICONEXCLAMATION) = ID_YES then
  5.     Action:= caFree;
  6. end;



Saludos.

  • 0

#3 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 posts
  • LocationEn un solo Lugar

Posted 23 November 2011 - 06:59 AM

okay como hago un formulario no autocreado, creo que eso esta en proyect opciones form, me gustaria haber un ejemplo de como hacerlo. para no morir en el intento. jjejejeje pro favor?
  • 0

#4 Rolphy Reyes

Rolphy Reyes

    Advanced Member

  • Moderadores
  • PipPipPip
  • 2092 posts
  • LocationRepública Dominicana

Posted 23 November 2011 - 07:08 AM

okay como hago un formulario no autocreado, creo que eso esta en proyect opciones form, me gustaria haber un ejemplo de como hacerlo. para no morir en el intento. jjejejeje pro favor?


Saludos.

@amell2020, si con la respuesta de Escafandra pudiste resolver tu inquietud; lo ideal es que marques este hilo como RESUELTO y abras otro hilo con esta pregunta.
  • 0

#5 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1750 posts
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Posted 23 November 2011 - 07:24 AM

Deberás diseñar ese formulario como no autocreado y poner este código de ejemplo en el evento OnClose:



delphi
  1. procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
  2. begin
  3.   Action:= caNone;
  4.   if MessageBox(Handle, 'Cerrar', '¿Desea cerrar?', MB_YESNO + MB_ICONEXCLAMATION) = ID_YES then
  5.     Action:= caFree;
  6. end;



Saludos.


Y si usas el evento OnCloseQuery, lo ejecuta ANTES que el OnClose...
  • 0

#6 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 posts
  • LocationEn un solo Lugar

Posted 23 November 2011 - 09:19 AM

aun no resuelvo el problema, mira cuando lo pongo no autoincrement el formulario a la hora de mostrarlo me da error, favor explicarme como haria eso?
  • 0

#7 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4111 posts
  • LocationMadrid - España

Posted 23 November 2011 - 10:52 AM

Te explico:

Si una vez cerrado tu formulario lo quieres volver a abris en otra ocasión futura deberás diseñarlo como no autocreable:
 

Project Options -> Pestaña Forms -> Mándalo a available Forms


Para crearlo y visualizarlo:


delphi
  1. var
  2.   Form2: TForm2;
  3. begin
  4.   Form2:= TForm2.Create(self);
  5.   Form2.Show;
  6. end;



Espero que con esto queden aclaradas todas tus dudas.

Saludos.

  • 0

#8 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 posts
  • LocationEn un solo Lugar

Posted 23 November 2011 - 12:47 PM

si entiendo, pero donde van esas variable dentro de que?
  • 0

#9 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4111 posts
  • LocationMadrid - España

Posted 23 November 2011 - 12:54 PM

si entiendo, pero donde van esas variable dentro de que?


Ese es el código que necesitas para crear un formulario desde otro. Lo pones donde quieres, en un menú, botón o click... donde te haga falta.
Además, ese formulario tendrá en su evento OnClose el código que tye expuse mas arriba, para decidir si se cierra o no.

Saludos.
  • 0

#10 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 posts
  • LocationEn un solo Lugar

Posted 23 November 2011 - 01:08 PM

sii ejejeje yo etendi, ya lo ubiese hecho, gracias amigo
  • 0

#11 amell2020

amell2020

    Advanced Member

  • Miembros
  • PipPipPip
  • 340 posts
  • LocationEn un solo Lugar

Posted 23 November 2011 - 01:16 PM

Gracias amigos la verdad que son una gran ayuda para mi. un placer inmenso. bendiciones
  • 0




IP.Board spam blocked by CleanTalk.