AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Programm beim start als TNA icon ablegen

Ein Thema von SaFu · begonnen am 15. Okt 2007 · letzter Beitrag vom 17. Okt 2007
Antwort Antwort
Seite 1 von 2  1 2   
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#1

Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 20:04
Hi

habe mal folgendes Problem ich möchte mein Programm beim Autostart direkt als TNA icon ablegen habe mich mal durch das forum gekämpft aber nichts richtiges gefunden.

der code hier minimiert mir erst das Programm als TNA icon wenn ich unten auf der taskleite auf das feld mit meinem Programm drücke wie kann ich es aber direkt minimiert lassen
Delphi-Quellcode:
unit Unit1; // Anmeldung

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, ShellApi, Mask,XPMan, DB, DBTables,
  OleCtrls,DateUtils, SHDocVw,INIFiles, jpeg, AppEvnts;

 const
  WM_TASKBAREVENT = WM_USER + 1;

type
  TForm1 = class(TForm)

   
    ApplicationEvents1: TApplicationEvents;
    procedure ApplicationEvents1Minimize(Sender: TObject);



  private

  procedure WMTaskbarEvent(var Message: TMessage); message WM_TASKBAREVENT;
  procedure TaskBarRemoveIcon;
  procedure TaskBarAddIcon;
  public

  end;

var
  Form1: TForm1;


implementation

uses

{$R *.dfm}


procedure TForm1.ApplicationEvents1Minimize(Sender: TObject);
begin
 TaskBarAddIcon;
end;

procedure TForm1.TaskBarAddIcon;
var
  tnid: TNotifyIconData;
  Owner: HWnd;
begin
  with tnid do
  begin
    cbSize := SizeOf(TNotifyIconData);
    Wnd := Form1.Handle;
    uID := 1;
    uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
    uCallbackMessage := WM_TASKBAREVENT;
    hIcon := Application.Icon.Handle;
     PostMessage(Application.Handle, WM_SYSCOMMAND, SC_MINIMIZE, 0);
  end;
   StrCopy(tnid.szTip, 'Runterfahren');
   Shell_NotifyIcon(NIM_ADD, @tnid);

  Owner:=GetWindow(Form1.Handle,GW_OWNER);
  If Owner<>0 then
    ShowWindow(Owner,SW_HIDE);
end;

procedure TForm1.TaskBarRemoveIcon;
var
  tnid: TNotifyIconData;
  Owner: HWnd;
begin
  tnid.cbSize := SizeOf(TNotifyIconData);
  tnid.Wnd := Form1.Handle;
  tnid.uID := 1;
  Shell_NotifyIcon(NIM_DELETE, @tnid);
  Owner:=GetWindow(Form1.Handle,GW_OWNER);
  If Owner<>0 then
   begin
    ShowWindow(Owner,SW_Show);
    ShowWindow(Owner,SW_Normal);
   end;
end;

procedure TForm1.WMTaskbarEvent(var Message: TMessage);
var
  Point: TPoint;
begin
  case Message.LParamLo of
     WM_LBUTTONDOWN: TaskBarRemoveIcon;
     WM_RBUTTONDOWN:
     begin
       SetForegroundWindow(Handle);
       GetCursorPos(point);
     end;
  end;
end;
end.
muss man da nur was ändern
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#2

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 20:15
Kannst du nicht einfach TaskbarAddIcon direkt aufrufen, z.B. im FormCreate-Event?

Übrigens, nur so nebenbei, bei Larry Osterman gibt es eine interessante Artikelserie zum Thema TNA-Applets (nach "applet" suchen).
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 20:27
Zitat von OregonGhost:
Kannst du nicht einfach TaskbarAddIcon direkt aufrufen, z.B. im FormCreate-Event?
das habe ich breits schon versucht geht aber nicht
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#4

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 20:40
Ich hätte da ein Beispielproejekt zu bieten. Vergleich das mal, das kann dir vllt. helfen den Fehler zu finden.
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#5

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 20:55
hab mir die funltion mal angeguckt aber das ist auch nicht das was ich meine dein Programm Startet auch sofort. aber es soll ja minimirt unten rechts als icon starten und erst wenn ich drauf drücke aufs icon soll es gross werden.


Es funtzt soweit bei mir auch ganz gut nur mein Programm startet Groß und nicht minimiert als icon
Angehängte Grafiken
Dateityp: bmp unbenannt_858.bmp (2,25 MB, 20x aufgerufen)
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#6

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 20:57
Und wenn du dein Hauptformular halt minimiert startest?
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Benutzerbild von SaFu
SaFu

Registriert seit: 8. Nov 2006
1.360 Beiträge
 
Delphi 10.3 Rio
 
#7

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 21:12
hab ich auch hiermit versucht
Delphi-Quellcode:

Application.Minimize;
wie geschrieben hab das ganze forum auf den kopf gestellt
"... Wie gesagt, die Nutzer von 10, 12, 14 Zoll Display's werden deine Seite nicht in voller Pracht sehen können, ...

Surft Ihr mit dem Taschenrechner?"
  Mit Zitat antworten Zitat
OregonGhost

Registriert seit: 8. Jun 2002
Ort: Lübeck
1.216 Beiträge
 
Delphi 3 Professional
 
#8

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 21:17
Ich dachte mehr daran, den WindowState im Objektinspektor auf wsMinimized zu stellen (oder wie das in Delphi eben hieß), geht das nicht?
Oregon Ghost
---
Wenn NULL besonders groß ist, ist es fast schon wie ein bisschen eins.
  Mit Zitat antworten Zitat
Progman

Registriert seit: 31. Aug 2007
Ort: 99974 MHL
695 Beiträge
 
Delphi 10.1 Berlin Starter
 
#9

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 21:23
ich habe das mal vor einiger Zeit so gemacht, dass ich mir ein Form als kleines Startfenster gemacht habe, dort wurde dann das Hauptform erzeugt und in die TNA gepackt. Dann wurde das Startform geschlossen. Das war praktisch wie ein kleiner Splashscreen mit ner Startmitteilung.
Bei Klick auf das TNA-Icon gabs dann ein Popupmenu mit Öffnen, Beenden etc.
Müsste allerdings den Code erstmal suchen....
Karl-Heinz
Populanten von Domizilen mit fragiler, transparenter Aussenstruktur sollten sich von der Translation von gegen Deformierung resistenter Materie distanzieren!
(Wer im Glashaus sitzt sollte nicht mit Steinen werfen)
  Mit Zitat antworten Zitat
Whookie

Registriert seit: 3. Mai 2006
Ort: Graz
441 Beiträge
 
Delphi 10.3 Rio
 
#10

Re: Programm beim start als TNA icon ablegen

  Alt 15. Okt 2007, 21:27
Was spricht eigentlich dagegen TCoolTrayIcon zu verwenden?
Whookie

Software isn't released ... it is allowed to escape!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz