AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi TTrayIcon ShowBalloonHint 20x seit Windows 11
Thema durchsuchen
Ansicht
Themen-Optionen

TTrayIcon ShowBalloonHint 20x seit Windows 11

Ein Thema von stalkingwolf · begonnen am 16. Mai 2024 · letzter Beitrag vom 19. Mai 2024
Antwort Antwort
stalkingwolf

Registriert seit: 6. Mai 2011
540 Beiträge
 
#1

TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 16. Mai 2024, 16:52
Delphi 11.

seit Windows 11 wird ShowBalloonHint 20x im NotificationCenter von Windows angezeigt.
In Windows 10 nur 1x.
Ist das ein Bug von Delphi?

kann man ganz einfach testen:
Neues Projekt. TTrayIcon drauf.
Eigenschaften :
Animated := TRUE
visible :=TRUE;
BallonFlag = btInfo;
BalloonHint:='Test;
BalloonTitle:= 'Test;

im Quellcode -> trayicon1.ShowBalloonHint;

Nun sieht man im NotificationCenter wie die Meldung auf +20 hochgezählt wird.

Lässt man das gleich in Windows 10 laufen kommt nur eine Notification rein.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 16. Mai 2024, 17:11
Das ist bei mir auch so. Es wird aber mit NIM_MODIFY an Windows übermittelt. Das sieht eher nach einem Bug in Windows aus.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
stalkingwolf

Registriert seit: 6. Mai 2011
540 Beiträge
 
#3

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 17. Mai 2024, 10:15
Ok verstehe.
Gibt es eine Alternative die Notification zu generieren?
Finde die ganze praktisch und unsere Kunden finden das auch gut. Aber einige beschweren sich das Sie zugebombt werden oder die Anzeige unten rechts flackert.

Zum Glück setzen von unseren Kunden nicht so viele auf 11. Die sind alle auf 10 umgestiegen und werden wohl 11 überspringen.
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
 
Delphi 12 Athens
 
#4

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 17. Mai 2024, 12:20
Wen triggert man da jetzt am besten wie an um das zu beseitigen?
Ok, man könnte einen bugreport bei EMBT aufmachen, aber wenn Windows die Ursache ist,
ist das ja nicht zielführend.

=> wie mache ich einen Bugreport gegenüber Microsoft/Windows auf?
Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.452 Beiträge
 
Delphi 12 Athens
 
#5

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 17. Mai 2024, 13:04
=> wie mache ich einen Bugreport gegenüber Microsoft/Windows auf?
Über Feedback Hub, erreichbar über die Tastenkombination Windows-F.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 17. Mai 2024, 13:34
Aber du benutzt auch wirklich ein animiertes Icon? Du könntest die Animation vielleicht für die Zeit stoppen?
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
stalkingwolf

Registriert seit: 6. Mai 2011
540 Beiträge
 
#7

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 17. Mai 2024, 14:15
Ohne animate wird es in der Tat nur 1x in das NotificationCenter gesetzt.
  Mit Zitat antworten Zitat
Michael II

Registriert seit: 1. Dez 2012
Ort: CH BE Eriswil
760 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 17. Mai 2024, 15:03
Ich halte das eher für ein Problem von Delphi. Zumindest in meinem Delphi 11.2.

Da du das Icon animierst, wird via Timer DoAnimate aufgerufen (und die Icons werden wie erwartet korrekt in Windows 11 angezeigt).

Wenn du trayicon1.ShowBalloonHint; ausführst
wird FData.uFlags gesetzt:
FData.uFlags := FData.uFlags or NIF_INFO;

Und während dem DoAnimiate wird dieser Wert im Refresh des TryIcons fortan an Windows übergeben. Da NIF_INFO gesetzt bleibt, wird im Notification Center bei jeder Iconanimation ein "NIF_INFO Wunsch" abgesetzt. Windows zeigt zum Glück nur die ersten 20 an .

Lösung: Nach Anzeige des Balloons das Flag NIF_INFO aus FData.uFlags entfernen.


Dies hilft bei meinem Delphi 112 und Windows 11:
Delphi-Quellcode:
procedure TCustomTrayIcon.ShowBalloonHint;
var HuFlags : UINT;
begin
  HUFlags := FData.uFlags;
  FData.uFlags := FData.uFlags or NIF_INFO;
  FData.dwInfoFlags := Cardinal(FBalloonFlags);
  Refresh(NIM_MODIFY);
  FData.uFlags := HUFlags; // nehme hier an, dass Delphi nicht noch mehr ... baut und NF_INFO nicht in HUFlags ist
  // alternativ dazu könnte man NF_INFO explizit löschen
end;
Du schreibst, dass frühere Windows Versionen nicht betroffen sind: Ich nehme an, dass frühere Versionen eine erneute gleiche Anfrage ignoriert haben.
Michael Gasser

Geändert von Michael II (17. Mai 2024 um 23:39 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.942 Beiträge
 
Delphi 12 Athens
 
#9

AW: TTrayIcon ShowBalloonHint 20x seit Windows 11

  Alt 19. Mai 2024, 10:39
Hallo,

ok, das sieht ja jetzt scheinbar nach einem Bug in Delphi aus.
Da wäre es toll, wenn der originale Poster mal unter quality.embarcadero und unter
https://qp.embarcadero.com/ nachschauen würde ob das schon erfasst ist und falls nicht
bitte erfasst. Dann besteht die Chance, dass EMBT das korrigiert.

Grüße und schönen Feiertag
TurboMagic
Grüße
TurboMagic
  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 05:47 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