AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Taskbareintrag

Ein Thema von CalganX · begonnen am 22. Jul 2002 · letzter Beitrag vom 22. Jul 2002
Antwort Antwort
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#1

Taskbareintrag

  Alt 22. Jul 2002, 13:26
Hi @all!
Ich habe ein kleines Problem. Ersteinmal was ich vorhabe:
==============
Ich versuche ein Programm zuschreiben, dass beim minimieren des Form1 zur Traybar verschoben wird. Nun soll aber der Eintrag in der Taskbar verschwinden.
Wenn nun auf das Trayicon doppelt geklickt wird, soll das Form wiederhergestellt werden und der Eintrag in der Taskbar neu erstellt werden.

==============
So, die Komponente für das Trayicon habe ich (auch weiß ich, wie ich das Form neu erstelle etc.). Die Frage ist halt: wie lasse ich den Eintrag beim minimieren verschwinden?

Mein Code-Ansatz:
Code:
procedure toTray;
begin
  SxTrayIcon1.Active := true; // Shell+ Komponente zum verschwinden in der Traybar
  // ab hier: keine Ahnung! HILFE
end;

procedure fromTray;
begin
  SxTrayIcon1.Active := false;
  // Zurück in die Taskbar!
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMinimize := toTray;
  Application.OnRestore := fromTray;
end;
So, ich hoffe ihr habt verstanden, was ich vorhabe und könnt mir helfen!

Chris1308
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#2
  Alt 22. Jul 2002, 14:51
So, Problem gelöst...
Für die, die es interessiert der Source:
Code:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    SxTrayIcon1: TSxTrayIcon;
    procedure FormCreate(Sender: TObject);
    procedure toTray(Sender: TObject);
    procedure fromTray(Sender: TObject);
    procedure SxTrayIcon1DblClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.toTray(Sender: TObject);
var Owner: HWND;
begin
  Owner:=GetWindow(Handle,GW_OWNER);
  ShowWindow(Owner,SW_HIDE);
end;

procedure TForm1.fromTray(Sender: TObject);
var Owner: HWND;
begin
  Owner:=GetWindow(Handle,GW_OWNER);
  ShowWindow(Owner,SW_SHOW);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  SxTrayIcon1.Active := true;
  Application.OnMinimize := toTray;
end;

procedure TForm1.SxTrayIcon1DblClick(Sender: TObject);
begin
  fromTray(self);
  Application.Restore;
end;

end.
Ihr braucht aber die Shell+ - Komponenten!

Chris1308
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#3
  Alt 22. Jul 2002, 15:17
Moin Chris,

und was sind die Shell+ Komponenten?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#4
  Alt 22. Jul 2002, 15:25
Die sind zur Arbeit mit der Shell genaueres hier!

Chris1308

PS: Hoffe die Adresse war richtig...
  Mit Zitat antworten Zitat
Antwort Antwort


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 00:45 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