AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Ärger mit Taskleisten-Kontextmenü und Fenster-"Fernsteuerung"
Thema durchsuchen
Ansicht
Themen-Optionen

Ärger mit Taskleisten-Kontextmenü und Fenster-"Fernsteuerung"

Ein Thema von Bbommel · begonnen am 6. Okt 2010 · letzter Beitrag vom 6. Okt 2010
Antwort Antwort
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
652 Beiträge
 
Delphi 12 Athens
 
#1

Ärger mit Taskleisten-Kontextmenü und Fenster-"Fernsteuerung"

  Alt 6. Okt 2010, 11:18
Hiho zusammen,

ich stolpere gerade über diverse merkwürdige Effekte, die meiner Einschätzung nach alle damit zusammenhängen, dass Delphi für eine Anwendung neben dem eigentlichen Hauptformular auch immer ein zweites, unsichtbares Formular erzeugt, das für die Taskleiste zuständig ist. Dadurch tritt ja z.B. gerne der Effekt auf, dass nicht alle Einträge im Kontextmenü der Anwendung in der Taskleiste erscheinen, wie sie bei Nicht-Delphi-Anwendungen erscheinen würden.

Zunächst mal hierzu eine spannende Beobachtung: Erstelle ich mit D2009 eine funkelnigelnagelneue Anwendung, dann tritt dieser Effekt nicht mehr auf. Auch die Delphi-Anwendung hat dann alle Einträge, die ich erwarten würde. Aber: Nehme ich eine schon etwas ältere Anwendung, die unter D2007 begonnen wurde, schmeiße alles raus, bis auch hier nur noch das "nackte" Form erscheint, entferne alle anderen Units, dann habe ich auch hier immer noch nur das eingeschränkte Kontextmenü.

Also so: Links die ganz neue Anwendung, rechts die ältere:
kontext_neu.jpg kontext_alt.jpg

Erstmal die wichtigste Frage, die alles andere vielleicht löst: Hat irgendwer eine Ahnung, an welchen Einstellungen es noch liegen kann, dass Delphi die beiden Anwendungen so unterschiedlich behandelt? Beides sind leere Forms, beide Haupt-Units enthalten keinen Code, beide dfm-Dateien sehen gleich aus. Nur das "alte" Form stammt halt aus einer D2007-Anwendung, bei der ich alle anderen Kompontenten und den Code für diesen Test gelöscht habe.

Hintergrund der ganzen Geschichte:

Ein Kunde möchte mein Programm per "ShowWindow" fernsteuern, es also aus seiner Anwendung heraus anzeigen und verstecken. Das funktioniert auch wunderbar, allerdings kommt Windows oder meine Anwendung dadurch so durcheinander, dass nach solch einer Fernsteuerung das normale, manuelle Minimieren und Maximieren des Fensters nicht mehr funktioniert.

Ich konnte das hier auch nachstellen: Schicke ich von einer anderen Test-Anwendung aus an das Programm per ShowWindow den Befehl zum Minimieren, dann verschwindet das Programm auch ganz brav. Ich kann es dann allerdings nicht mehr über die Taskleiste wiederherstellen oder maximieren - nur noch wenn ich das Fenster über die Test-Anwendung direkt maximiere. Ursache scheint zu sein, dass das Haupt-Form innerhalb dieses unsichtbaren Delphi-Forms minimiert wird und damit kommt Windows dann wohl nicht mehr klar.

Jetzt aber das Schöne: Bei der komplett neuen D2009-Anwendung, bei der auch das Menü in der Taskleiste komplett ist, funktioniert alles tadellos. Ich kann per "Fernsteuerung" minimieren und maximieren, aber auch über die Taskleiste funktioniert nachher noch alles.

Hat irgendwer die zündende Idee?

Bis denn
Bommel
  Mit Zitat antworten Zitat
blauweiss

Registriert seit: 19. Jun 2007
142 Beiträge
 
#2

AW: Ärger mit Taskleisten-Kontextmenü und Fenster-"Fernsteuerung"

  Alt 6. Okt 2010, 11:27
Hallo Bommel,

eine Idee auf die Schnelle:
experimentiere mal mit Application.MainFormOnTaskbar := true/false, vielleicht liegt es daran.

Grüße,
blauweiss
  Mit Zitat antworten Zitat
Bbommel

Registriert seit: 27. Jun 2007
Ort: Köln
652 Beiträge
 
Delphi 12 Athens
 
#3

AW: Ärger mit Taskleisten-Kontextmenü und Fenster-"Fernsteuerung"

  Alt 6. Okt 2010, 11:43
Jepp, das scheint es gewesen zu sein. Vielen, vielen Dank!
  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:27 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