Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 27-02-2008
jafi666 jafi666 is offline
Registrado
 
Registrado: feb 2008
Posts: 3
Poder: 0
jafi666 Va por buen camino
Minimizar una aplicacion, pero no en la barra de tareas

hola no se si me pueden ayudar, quisiera que mi aplicacion echa en delphi, en el momento en que se minimize vaya como icono a lado de la barra de tareas ahi por donde esta el reloj de windows, me dijeron que use Ticon pero no me ubico muy bien haber si me pueden ayudar. gracias
Responder Con Cita
  #2  
Antiguo 27-02-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola jafi666,
Bievenido a clubdelphi, como eres nuevo por favor tomate unos minutos y lee la guia de estilo.
Con respecto a tu duda, el tema se trató en muchísimas ocasiones. Esto se consigue con el componente TTrayIcon, si realizas una búsqueda en los foros vas a a encontrar mucha información. la amplia biblioteca JEDI viene con uno, y en torry.net otros tantos más.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #3  
Antiguo 27-02-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bienvenido al club.
Hay muchos hilos que muestran como hacerlo, aqui hay un ejempo:
Coloca un PopupMeno en el form y revisa este codigo:
Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, ShellApi,
  Forms, Dialogs, Menus;

type
  TForm1 = class(TForm)
    PopupMenu1: TPopupMenu;
    Abrir1: TMenuItem;
    procedure Abrir1Click(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    IconData : TNotifyIconData;
    procedure WMSysCommand(var Msg: TWMSysCommand); message WM_SYSCOMMAND;
    procedure Espabila(var Msg : TMessage); message WM_USER+1;

  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMSysCommand(var Msg: TWMSysCommand);
begin
  if (Msg.CmdType = SC_MINIMIZE) then begin
    with IconData do 
    begin 
      cbSize := sizeof(IconData);
      Wnd := Handle;
      uID := 100;
      uFlags := NIF_MESSAGE + NIF_ICON + NIF_TIP;
      uCallbackMessage := WM_USER + 1;
      {Usamos de icono el mismo de la aplicacion}
      {We use the same icon as the application}
      hIcon := Application.Icon.Handle;
      {Como Hint del icono, el nombre de la aplicacion}
      {The name of te app for the hint of the icon}
      StrPCopy(szTip, Application.Title);
    end; 
    {Ponemos el icono al lado del reloj}
    {Place the icon next to the clock}
    Shell_NotifyIcon(NIM_ADD, @IconData);
    {Ocultamos la Form...}
    {Hide the form...}
    Hide;
  end else DefaultHandler(Msg);
end; 

procedure TForm1.Espabila(var Msg : TMessage);
{Aqui se recibe la pulsacion sobre el icono}
{Here we recieve the click on the icon}
var
  p : TPoint;
begin
  if Msg.lParam = WM_RBUTTONDOWN then begin
    SetForegroundWindow(Handle);
    GetCursorPos(p);
    PopupMenu1.Popup(p.x, p.y);
    PostMessage(Handle, WM_NULL, 0, 0);
  end;
end;


procedure TForm1.Abrir1Click(Sender: TObject);
begin
  {Mostramos de nuevo la form}
  {We show the form again}
  Form1.Show;
  ShowWindow(Application.Handle, SW_HIDE);
  {Y nos cargamos el icono de la system tray}
  {Destroy the systray icon}
  Shell_NotifyIcon(NIM_DELETE, @IconData);
  IconData.Wnd:=0;

end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
   {Quitamos el icono (en el caso de haberlo puesto antes...)}
  {Take off the icon (in case of had placed it before.....)}
  if IconData.Wnd <> 0 then Shell_NotifyIcon(NIM_DELETE, @IconData);

end;

procedure TForm1.FormCreate(Sender: TObject);
begin

end;

end.
Saludos
Responder Con Cita
  #4  
Antiguo 28-02-2008
jafi666 jafi666 is offline
Registrado
 
Registrado: feb 2008
Posts: 3
Poder: 0
jafi666 Va por buen camino
gracias lo logre

hola, muchas gracias por la ayuda me sirvio el codigo, y tendre en cuenta la guia de estilos, hasta la proxima y gracias de nuevo, bye
Responder Con Cita
Respuesta



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
Ocultar mi aplicacion de la barra de tareas en XP! JuanErasmo API de Windows 4 18-04-2006 01:45:11
Minimizar Aplicacion en la barra de tareas lokodelphi Varios 3 16-04-2006 06:52:40
No aparece la aplicación en barra de tareas Fernando Windows 7 30-09-2005 23:30:15
Mostrar icono en la barra de Tareas al minimizar (2) Moises22 API de Windows 6 27-09-2005 09:53:12
ocultar aplicacion en la barra de tareas jlcasih API de Windows 5 11-09-2003 20:05:54


La franja horaria es GMT +2. Ahora son las 12:47:42.


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