Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Aplicación el Tray System

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Aplicación el Tray System Responder citando

Hola amigos:

Como puedo hacer que una aplicación aparezca desde el inicio solo en el tray system, como lo hace Norton Antivirus.

Tengo una aplicación que lo hace pero me aparece la ventana, y enseguida desaparece, mostrando como se oculta.

En esta direccion pueden bajar el programa para que lo chequen.
http://mx.geocities.com/mverastegui/descarga/ocultar.zip
si lo desean.

Para desaparecerla uso un timer con un intervalo de 1 ms, y la oculta
usando la instrucción .

Código:
Hide()


Muchas gracias,
Para que arranque cuando se enciende la computadora, lo hago
en el proceso de instalación en un guion de Inno Setup.
La instruccion es:
Código:

[Registry]
Root: HKLM; Subkey: "Software\Microsoft\Windows\CurrentVersion\Run"; ValueType : string; ValueName : "Mi App"; ValueData: "{app}\Applic.exe"


De antemano gracias por su ayuda.
_________________
Miguel Angel Verastegui Diaz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Puedes usar el siguiente codigo, si lo has echo con el programa que esta en el foro, dentro del menu OnCreate de tu Form


Código:
        ShowWindow (this->Handle, SW_HIDE);
        nid.hIcon = Icon->Handle;
        nid.uFlags = NIF_ICON | NIF_TIP;
        Shell_NotifyIcon (NIM_MODIFY, &nid);

si no dime con que lo hiciste, y te doy un ejemplo mas concreto
_________________
Cool
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: La direccion correcta: Responder citando

Disculpen.
Puse mal la direccion anterior.
La correcta es:

[url]
http://mx.geocities.com/mverastegui/descarga/Ocultar.zip
[/url]

Gracias.
_________________
Miguel Angel Verastegui Diaz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Cesar y a los demas ya puse la direccion correcta.

La parte medular para esconder la aplicacion estan en este Codigo.
Código:

__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
 
  Application->OnMinimize = Minimizar;
// para que aparezca un icono en el Tray System.
   TrayIcon_Create("Mensaje ",Application->Icon->Handle);
}
void __fastcall TForm1::Minimizar(TObject *Sender)
{
   Oculto = true;
   Hide();
}
void __fastcall TForm1::FormCreate(TObject *Sender)
{
   Oculto = true;
   Hide();     
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Mostrar1Click(TObject *Sender)
{
   if (Oculto) {
        Application->Restore();
        Oculto = false;
       Show();
      }
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Ocultar1Click(TObject *Sender)
{
   Oculto=true;
   Hide();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
   Oculto=true;
   Hide();
   Timer1->Enabled = false;
}
//---------------------------------------------------------------------------

Oculto es una variable boolean, Ocultar1, y mostrar1 son opciones del
menù emergente.
TrayIcon_Create(..) es la funcion que uso para que aparezca en el
Tray system.
Ya pueden descargar el programa si desean mas detalles.
[url]
http://mx.geocities.com/mverastegui/descarga/Ocultar.zip
[/url]
Gracias.
_________________
Miguel Angel Verastegui Diaz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Problema al minimizar. Responder citando

Hola a todos.

El problema de ocultar la aplicación, al iniciar la ejecución y que aparezca en el TraySystem, lo voy a probar con la instrucción. vista en mensaje,
que esta en Tips & tricks Ejecutar oculto.

https://cppbuilder.es/viewtopic.php?t=9910

es la siguiente.
Código:
Application->ShowMainForm=False;


Lo voy a probar.

Hay otro problema, tomando como ejemplo el programa de Cesar,

https://cppbuilder.es/viewtopic.php?t=9080&highlight=trayicon

Funciona bien, pero surge un problema: cuando el codigo lo agregas al evento OnMinimize.

Código:
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
   Application->OnMinimize = Minimiza;
}

void __fastcall TForm1::Minimiza(TObject *Sender)
{
  InitializeNID(); // funcion utilizada para colocar un icono en el tray system
   ShowWindow(Handle,SW_HIDE);
}


Cuando pulsas por primera vez el boton minimizar de la ventana, funciona bien, restauras , todo perfecto, pero cuando minimizar en diversas ocaciones, la ventana se minimiza , pero no se oculta.

Agrego el enlace del programa por si lo quieren checar.
http://mx.geocities.com/mverastegui/descarga/ocultar_c.zip

¿Como solucionar este problema?
Muchas gracias por su ayuda. Very Happy
_________________
Miguel Angel Verastegui Diaz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Nuevos enlaces Responder citando

Enlaces rotos
http://mx.geocities.com/mverastegui/descarga/Ocultar.zip
http://mx.geocities.com/mverastegui/descarga/ocultar_c.zip

Nuevos enlaces
http://dreamsoftmx.yolasite.com/resources/descargas/Ocultar.zip
http://dreamsoftmx.yolasite.com/resources/descargas/ocultar_c.zip
_________________
Miguel Angel Verastegui Diaz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

este va perfecto:
https://cppbuilder.es/viewtopic.php?t=9910

Oculta la aplicacion al iniciar y ni se nota. Si se pone en el Hide(); en el onpaint aparece un pequeño destello de la aplicacion, quiero decir que se nota que se ha iniciado algo.

Un saludo.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Gracias Isa,
Pero, ¿como restauro de nueva cuenta el programa?.
Me refiero, volverlo a primer plano.
Ya que usando

Código:
Hide()

En OnPaint() de la forma, si, desaparece totalmente del escritorio, pero no te permite restaurar la ventana, cuando lo desees, pues desaparece el icono del la bandeja del sistema (tray system).
_________________
Miguel Angel Verastegui Diaz
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email MSN Messenger
Mensaje    Asunto: Responder citando

Pues tienes dos opciones, o lo colocas en el SysTray y desde allí lo haces visible, o utilizas un Hook del teclado o en su defecto HotKey para tal fin.

Saludos.
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.