IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Delphi Discussion :

Application sur forme : icon


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 89
    Par défaut Application sur forme : icon
    Bonjour,

    Je voudrais pouvoir "icôniser mon application"

    C'est a dire : En cliquant sur un bouton, je souhaite qu'un icône apparaît dans la bare des taches mes vers l'heure.

    Je ne peux pas faire un service car je n'ai pas le droit administrateur sur le pc ou je dois installé application

  2. #2
    Membre Expert

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2002
    Messages : 1 296
    Par défaut
    Et dans un français correct?

    Sinon, j'utilise le composant TCoolTrayIcon de CoolDev.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2002
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 89
    Par défaut
    je veins de trouver une solution

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    unit Unit1;
     
    interface
     
    uses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      StdCtrls,ShellAPI, ExtCtrls;
     
    Const WM_MYMESSAGE=WM_USER+100; //juste en dessous des uses
     
    type
      TForm1 = class(TForm)
        Button1: TButton;
        Image1: TImage;
        procedure FormCreate(Sender: TObject);
        procedure Button1Click(Sender: TObject);
        procedure FormClose(Sender: TObject; var Action: TCloseAction);
      private
        { Déclarations privées }
        procedure TrayMessage(var Msg: TMessage); message WM_MYMESSAGE;
      public
        { Déclarations publiques }
        IconData : TNotifyIconData; 
     
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.DFM}
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
    //mettez ce code dans formcreate 
      IconData.cbSize:=SizeOf(IconData);
      IconData.Wnd:=Handle;
      IconData.uID:=1;
      IconData.uFlags := NIF_ICON or NIF_TIP or NIF_MESSAGE;
      IconData.uCallbackMessage := WM_MYMESSAGE;
      IconData.hIcon := Form1.Image1.Picture.Icon.Handle;//icone qui apparaitra dans le systray.
      IconData.szTip:='Toto : pas bien jeanmy';
      Shell_NotifyIcon(NIM_ADD,@IconData);//ajoute la petite icône dans la barre des taches
     
     
    end;
     
    procedure TForm1.Button1Click(Sender: TObject);
    begin
    form1.Visible:=False;
    end;
     
     
    procedure TForm1.TrayMessage(var Msg: TMessage);//procedure pour les action sur l'icone
    begin
    if (Msg.LParam=WM_RBUTTONDOWN)
      then form1.Visible:=True;
    if (Msg.LParam=WM_LBUTTONDOWN)
      then form1.Visible:=True;
    end;
     
     
    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
    begin
    if (@IconData<>NIL) then 
    Shell_NotifyIcon(NIM_DELETE,@Icondata); // supprime la petite icône de la barre des taches 
    end;
     
    end.

    Merci a tous quand même

  4. #4
    Membre Expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Par défaut
    Dans la RXLib, il y a un composant pour ça.
    On le retrouve dans le JVCL (Jedi Library) sous le nom de TJvTrayIcon (onglet de la palette de composants JV Non-Visual, si tu l'as installé)

    C'est gratuit et ça marche très bien.

  5. #5
    Membre Expert
    Avatar de LadyWasky
    Femme Profil pro
    Inscrit en
    Juin 2004
    Messages
    2 932
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 55
    Localisation : France, Hauts de Seine (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 2 932
    Par défaut
    Et tu as trouvé une réponse pendant que je rédigeais la mienne.

    Elle est sympa ta solution

  6. #6
    Membre Expert

    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Août 2002
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Août 2002
    Messages : 1 296
    Par défaut
    Apparemment il y a plusieurs composants qui s'appellent TCoolTrayicon. Je parlais de ce TCoolTrayIcon (gratuit):

    http://www.dukeweb.co.uk/delphi/freeware.shtml#2

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/06/2009, 14h38
  2. Migration d'une application Oracle Forms sur un Intranet
    Par habasque dans le forum Développement Web en Java
    Réponses: 4
    Dernier message: 17/05/2007, 18h57
  3. base de donnees sur serveur application sur client
    Par rabi dans le forum Bases de données
    Réponses: 4
    Dernier message: 12/05/2004, 21h04
  4. quel langage pour créer des "applications" sur 1 s
    Par jaribu dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 30/07/2003, 14h06
  5. Ontop Sur form secondaire
    Par remixtech dans le forum Composants VCL
    Réponses: 2
    Dernier message: 17/03/2003, 22h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo