AGB  ·  Datenschutz  ·  Impressum  







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

Das Problem mit dem vergessenem TrayIcon

Ein Thema von Popov · begonnen am 2. Mär 2012 · letzter Beitrag vom 3. Mär 2012
Antwort Antwort
Seite 1 von 2  1 2      
sHoXx
(Gast)

n/a Beiträge
 
#1

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 13:22
ich rufe im FormClose
    TrayIcon1.Destroy; auf, dann ist es bei mir weg.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 13:25
ich rufe im FormDestroy
    TrayIcon1.Destroy; auf, dann ist es bei mir weg.
Häh ... das ist doch

a) eine Komponente, die auf der Form liegt (liegen sollte) und damit als Owner diese Form hat. Und dieser Owner kümmert sich schon um die Freigabe

b) egal was mit Destroy freigeben sollte man besser lassen und dafür Free verwenden

EDIT: und der TE setzt eben keine Komponente dafür ein
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 13:28
@sHoXx

Wie gesagt, ich habe keine Komponente.

Ich hab in den Jahren an die zig Varianten ausprobiert und einige sahen sogar gut aus und der Icon verschwand meistens. Aber nur meistens. Irgendwas fehlt da.

@himitsu

Das versteht sich von selbst. Daran liegt es nicht.
  Mit Zitat antworten Zitat
sHoXx
(Gast)

n/a Beiträge
 
#4

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 13:31
gut, ich dachte du verwendest die Standardkomponente, und wolltest dir keine anderweitige komponente installieren. Manchmal sind die Finger schneller als der Kopf

vielleicht zeigst du etwas code, an dem man sehen kann, wie dein selbst erstelltes tryicon aussieht

Geändert von sHoXx ( 2. Mär 2012 um 13:34 Uhr)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#5

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 13:39
Gibt es eine Standardkomponente in Delphi 7?

Ich hab mit der Zeit so viele Versionen getestet, eigene Kreationen, aber auch aus dem Internet. Somit kann ich einen beliebigen Code zeigen. Ich glaube die habe ich zuletzt verwendet: http://www.delphipraxis.net/30716-post2.html , da sie sogar passabel funktioniert und der Icon verschwindet fast immer. Einige Male blieb er aber.

Und bevor himitsu wieder fragt, alle enthalten diese Zeile: Shell_NotifyIcon(NIM_DELETE ...
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.222 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 13:49
Gibt es eine Standardkomponente in Delphi 7?
AFAIK Nein. Erst in neueren Delphi-Versionen liefert Borland/Codegear/Embaracadero eine Komponenten mit.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#7

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 14:14
Hi, meinst du mit:

Zitat:
"Und alles funktioniert auch wie ich es will, nur nicht wenn das Programm beendet wird. "
Inder IDE per Stopp oder bei einem "normalem" Beenden des Programmes ?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#8

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 14:22
Ich glaube das ist dann der Fall, wenn das Programm abrupt terminiert wird, sodass es nicht aufräumen und somit den Tray wegschießen kann!
Weil unter normalen Umständen verschwindet der auch.
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#9

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 15:24
Inder IDE per Stopp oder bei einem "normalem" Beenden des Programmes ?
Beides

Zitat von Aphton:
Ich glaube das ist dann der Fall, wenn das Programm abrupt terminiert wird,
Das ist schon in paar hundert mal in paar hundert Programmen passiert. Ich glaube nicht, dass ich sie alle terminiert habe. Nein, soweit hat alles schon seine Richtigkeit und spätestens bei FormDestroy wird alles beendet.

Zitat von shmia:
Es gibt ja 3 Ansätze für Tray Icons:
a) ich hab nichts gegen Komponenten und nehme sie wenn es sein soll, aber aufgrund einige schlechte Erfahrungen gehe ich sehr sparsam mit zusätzlichen Komponenten. Ich investiere (privat) liebe einen Tag mehr in das Programm und kann mir sicher sein, dass ich in 10 Jahren in der fünf höheren Version das Programm aus dem Archiv holen kann und es funktioniert ohne Probleme, und ohne dass ich etwas nachinstallieren muß was vielleicht nicht mehr kompatibel ist. Wie gesagt - privat.

b) gegen eine Klasse habe ich nichts und wenn alles fehlerfrei funktioniert, dann mache ich es sofort. Aber auch wenn die letzte Version relativ gut funktioniert, so nicht 100% fehlerfrei. Mich wundert es, dass es hier noch keinem aufgefallen ist, allerdings ist es nicht ein Problem einzig von mir. Ich hatte schon einige Delphi-Fremdprogramme bei denen auch diese Probleme vorkamen.

c) mag sein, aber nicht selten schreibe ich die paar Zeilen schneller als das ich eine Unit oder Klasse erst suchen muß. Im Grunde genommen sind es nur paar Zeilen Code, wenn man nichts komplexes will, wie z.B. wechselnde Icons, Reaktionen auf verschiedene Aktionen, usw. Wenn man nur ein PopupMenu aufrufen will, sind es nur paar Zeilen.

Aber hier geht es nicht drum was die einzig richtige Methode ist, sondern warum das Problem besteht. Soll ich irgendwann im hohen Alter meinen Enkeln erzählen, ich hatte da ein Problem, ich habe es aber nicht gelöst, ich habe einfach eine Fremdkomponente genommen?
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#10

AW: Das Problem mit dem vergessenem TrayIcon

  Alt 2. Mär 2012, 14:40
Wie gesagt, ich habe keine Komponente.
Es gibt ja 3 Ansätze für Tray Icons:
a.) Komponente
Vorteile: Wiederverwendbar, für den Programmier leicht zu benützen, in der Regel "idiotensicher" und Fehlerfrei
Nachteile: muss installiert werden, bringt gewissen Overhead mit sich
b.) eine Klasse (von TObject abgeleitet)
Vorteile: Wiederverwendbar, relativ leicht zu benützen
Nachteile: keine
c.) direkter Aufruf von Windows API-Funktionen
Vorteile: erlaubt auch spezielle Anpassungen
Nachteile: nicht wiederverwendbar, Fehlerträchtig, Code verschmutzt die Anwendung,
schlecht auf Veränderungen anpassbar

Ein professioneller Programmierer kann eigentlich nur die Ansätze a.) oder b.) verwenden.
Die Variante c.) ist für Cowboy-Programmierer.
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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