![]() |
CoolTrayIcon + Fenster der ersten Instanz anzeigen geht nich
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe da ein Problem und hoffe Ihr könnt mir helfen.
Da dies meine erste Anfrage hier ist, hoffe ich die richtige Rubrik gewählt zu haben. Exemplarisch habe ich mal ein abgespeckten Quellcode angehängt. Dazu verwende ich noch die bekannte CoolTryIcon Komponente. ![]() Ich verwende Diese, weil mein Delphi 5 das selbst noch nicht hergibt. Des Weiteren habe ich noch das TadpInstanceControl ![]() eingebunden. Das sorgt dafür, das immer nur eine vorgebende Anzahl von Instanzen gestartet werden kann. Kann man zwar auch händisch (Mutex) einbauen, ich habe mich jedoch für die Variante entschieden. Ich möchte jetzt, dass wenn mein Fenster in den Tray verschwindet ein weiterer Start des Programms das Fenster wieder in den Vordergrund holt. Mein Programm bekommt zwar den Start einer weitern Instanz mit, das Meldungsfenster erscheint, aber der nachfolgende Befehl „trayIcon1.ShowMainForm“ zeigt keine Wirkung. Laut CooltrayIcon Doku sollte auch nur dieser Befehl verwendet werden, um das Fenster wieder zu Zeigen. Meine Status ist Programmieranfänger. Ich verwende Delphi 5 und Win 7 Prof 64 Bit. Danke schon mal für eure Tipps. Gruß Thomas
Delphi-Quellcode:
{ Delphi 5
Enthält - CooltrayIcon : [url]http://subsimple.com/delphi.asp[/url] - TadpInstanceControl Full source code of a Delphi component that can control the behavior of your application's multiple instances: with the option to limit the number of running instances. Part 2 of the "Controlling the number of application instances" article. URL: 1) [url]http://delphi.about.com/library/weekly/aa110203a.htm[/url] 2) [url]http://delphi.about.com/library/weekly/aa100703a.htm[/url] .............................................. Zarko Gajic, BSCS About Guide to Delphi Programming [url]http://delphi.about.com[/url] how to advertise: [url]http://delphi.about.com/library/bladvertise.htm[/url] free newsletter: [url]http://delphi.about.com/library/blnewsletter.htm[/url] forum: [url]http://forums.about.com/ab-delphi/start/[/url] .............................................. } unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CoolTrayIcon, adpInstanceControl; type TForm1 = class(TForm) TrayIcon1: TCoolTrayIcon; Button1: TButton; adpInstanceControl1: TadpInstanceControl; procedure Button1Click(Sender: TObject); procedure TrayIcon1Click(Sender: TObject); procedure adpInstanceControl1MaxInstancesReached(Sender: TObject; const LastInstanceHandle: Cardinal); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1.Button1Click(Sender: TObject); begin trayicon1.hideMainForm; end; procedure TForm1.TrayIcon1Click(Sender: TObject); begin trayicon1.ShowMainForm; end; procedure TForm1.adpInstanceControl1MaxInstancesReached(Sender: TObject; const LastInstanceHandle: Cardinal); begin showmessage('Zeige wieder das Fenster der ersten Instanz..'); trayIcon1.ShowMainForm; //Das funktioniert leider nicht. PostMessage(TrayIcon1.Handle, WM_TRAYNOTIFY, Integer(TrayIcon1), WM_LBUTTONDOWN); //auch nicht. end; end. |
Re: CoolTrayIcon + Fenster der ersten Instanz anzeigen geht
Nimm die Mutex-Variante. Gibt hier in der DP schon einige Themen dazu aus denen man schlau werden kann.
Die Komponente funktionierte bei mir auch nicht. |
Re: CoolTrayIcon + Fenster der ersten Instanz anzeigen geht
Die Komponente müsste doch funktionieren. Es wird doch die showmessage angezeigt.
Wenn man das Fenster minimiert funktioniert es auch richtig. Ist das eventuell ein Problem von CoolTryIcon ? Gruß Thomas |
Re: CoolTrayIcon + Fenster der ersten Instanz anzeigen geht
Push
Hat denn sonnst keiner das Problem bei der CoolTrayIcon Komponente bemerkt? Gruß Thomas |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz