Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-12-2007
Avatar de juanlaplata
juanlaplata juanlaplata is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Plata, Bs. As. (Argentina)
Posts: 212
Poder: 20
juanlaplata Va por buen camino
property OnShow: TNotifyEvent;

Description

Use OnShow to perform special processing when the form is shown (that is, when the form’s Visible property is set to True).

El Evento OnShow del Form que manipulas.
Fuente: ayuda de delphi.
Creo que esta ahi la cosa.
Responder Con Cita
  #2  
Antiguo 13-12-2007
xio xio is offline
Miembro
 
Registrado: dic 2006
Posts: 87
Poder: 20
xio Va por buen camino
El evento OnActivate tampoco es y el OnShow lo he provado y nada.


A ver yo utilizo la siguiente rutina para comprobar el evento que se genera:Código Delphi [-]procedure TFormMenu.WMSysCommand(var Message: TWMSysCommand);
begin
//
ShowMessage(IntToStr(Message.CmdType));
inherited;
end;





Con eso podeis comprobar que al minimizar la aplicacion aparece un mensaje con un numero, pero al restaurarla de la barra de tareas no aparece nada. Quiere decir esto que no se puede controlar desde delphi????
Responder Con Cita
  #3  
Antiguo 14-12-2007
Avatar de Gabo
[Gabo] Gabo is offline
Miembro Premium
 
Registrado: mar 2007
Ubicación: Murcia (España)
Posts: 684
Poder: 20
Gabo Va por buen camino
La verdad no tengo idea si hay algún evento como el que buscas, pero creo que con un poco de imaginación podrías lograrlo, al fin y al cabo, si se produce el evento OnMinimize y luego el OnActivate, es lógico pensar que el usuario ha minimizado y luego restaurado desde la barra de tareas. Bastaría con que guardaras el estado de minimizado y luego comprobaras ese estado en el evento OnActivate (o el OnShow).

Es una idea nada más, no sé si a alguien se le ocurrirá algo mejor.
__________________
Saludos,
Gabo

A menos que se indique lo contrario, el código estará hecho en C++Builder.
Responder Con Cita
  #4  
Antiguo 14-12-2007
xio xio is offline
Miembro
 
Registrado: dic 2006
Posts: 87
Poder: 20
xio Va por buen camino
No eso no sirve porque cuando restauro la aplicacion de la barra de tareas no pasa por activate entonces no puedeo controlarlo por ahí.

A nadie le a pasado esto alguna vezzzzzzzzzzzzzzzzzzzzzzzzzzzzzz!!
Responder Con Cita
  #5  
Antiguo 14-12-2007
Avatar de Gabo
[Gabo] Gabo is offline
Miembro Premium
 
Registrado: mar 2007
Ubicación: Murcia (España)
Posts: 684
Poder: 20
Gabo Va por buen camino
Sólo por estar seguro, ¿estamos hablando del mismo OnActivate?

Yo me refiero al de la aplicación.

Cita:
TCustomForm::OnActivate
Occurs when the form becomes active.
__property Classes::TNotifyEvent OnActivate = {read=FOnActivate, write=FOnActivate, stored=IsForm};
Description
Use OnActivate to perform special processing when the form receives focus. A form becomes active when focus is transferred to it (when the user clicks on the form, for example).
Note: The OnActivate event of the application (TApplication), not the form, occurs when Windows switches control from another application.
__________________
Saludos,
Gabo

A menos que se indique lo contrario, el código estará hecho en C++Builder.
Responder Con Cita
  #6  
Antiguo 14-12-2007
Avatar de Gabo
[Gabo] Gabo is offline
Miembro Premium
 
Registrado: mar 2007
Ubicación: Murcia (España)
Posts: 684
Poder: 20
Gabo Va por buen camino
Acabo de comprobarlo en un rato libre que he tenido y funciona sin problemas.

Es lo que ya sabes:

1.- Un objeto TApplicationsEvents.

2.- El siguiente código para el OnMinimize y el OnRestore (está en C++Builder):

Código:
 
void __fastcall TForm1::ApplicationEvents1Minimize(TObject *Sender)
{
    Application->MessageBox("Minimizándome", "Información");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ApplicationEvents1Restore(TObject *Sender)
{
    Application->MessageBox("Restaurándome", "Información");
}
Si no te resulta debe ser otro el problema...
__________________
Saludos,
Gabo

A menos que se indique lo contrario, el código estará hecho en C++Builder.
Responder Con Cita
  #7  
Antiguo 14-12-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 23
gluglu Va por buen camino
Código Delphi [-]
procedure TMainform.FormCreate(Sender: TObject);
begin
 
  Application.OnActivate := TuFuncion;
 
end;

No hace falta añadir ningún Objeto ni nada.

Se ejecutará cada vez que desde cualquier otro programa se devuelva el control a tu aplicación, esté o no minimizada en la barra de tareas.
__________________
Piensa siempre en positivo !
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
No se que evento se genera xio OOP 5 17-12-2007 11:38:47
Como borrar las tablas que genera una consulta xio SQL 6 13-12-2007 10:30:07
Porque se genera un Archivo _QS** K4RL0S Varios 2 28-06-2006 00:50:00
Stored Procedure genera codigo Carlos Hurtado Firebird e Interbase 2 19-10-2005 19:38:19
¿Como elimino las tablas temporales que me genera mi Exe? IcebergDelphi Tablas planas 2 02-06-2003 15:36:32


La franja horaria es GMT +2. Ahora son las 04:57:06.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi