Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Anwendung erscheint nicht in Task Leiste
gizmo - Sa 15.06.13 22:47
Titel: Anwendung erscheint nicht in Task Leiste
Hallo,
ich bin kein ausgebildeter Programmierer und habe bisher mit Delphi 7 kleine Tools für Win XP erstellt, die mir und meinen Kollegen die Arbeit erleichtern.
Nun habe ich mit Delphi 2007 eine Anwendung für Windows 7 erzeugt, die zwar funktioniert wie gewünscht, jedoch keine Schaltfläche in der Task Leiste erzeugt, was den Nutzen des Tools in Frage stellt. Was läuft da falsch?
jaenicke - So 16.06.13 10:53
Es gibt einen Unterschied zwischen Delphi 2007 und früheren Versionen was das angeht. Bis Delphi 2006 hast du in der Taskleiste ein verstecktes Application-Fenster gesehen. Seit Delphi 2007 siehst du dort die Formulare selbst.
Standardgemäß ist das von dir beschriebene Verhalten nicht, aber ich vermute du spielst irgendwo mit SetWindowLong oder so herum um zu beeinflussen was in der Taskleiste angezeigt wird. Es gibt eine Einstellung Application.ShowMainFormOnTaskbar, mit der du das Verhalten ändern kannst, diese solltest du vor dem ersten erstellten Formular in der Projektdatei setzen.
gizmo - Mo 17.06.13 20:39
Hm.. Danke für die Antwort, aber SetWindowLong ist mir nicht bekannt.
In Form.Create habe ich nur BorderStyle:=bsDialog und Position:=poScreenCenter, sonst nix.
Im Quelltext steht Application.MainFormOnTaskbar:=true direkt nach Application.Initialize.
Application.ShowMainFormOnTaskbar nimmt mir der Compiler nicht ab, das gibt es so nicht.
Ich bekomme nicht raus, was hier nicht stimmt.
>M@steR< - Mo 17.06.13 20:54
Gelöscht
gizmo - Mo 17.06.13 21:54
Nur bei diesem Projekt. Nur ein Formular mit Panels, Buttons, LabelEdits und UpDowns.
Die Anwendung erzeugt JPEG Dateien (Einfarbig mit buntem Rahmen und Text), welche im Schnittprogramm als Dummys eingesetzt werden, für Grafiken, die der Kunde noch liefern muss. Kann ich auch mit Photoshop machen, geht so aber viel schneller.
jaenicke - Di 18.06.13 06:25
Nimm das Formular einfach mal in ein neues Projekt rein und schau was passiert. Wenn es dann geht, speichere es einfach an Stelle des alten Projekts. ;-)
Ansonsten kannst du, wenn du das möchtest, das Projekt auch hochladen. Den meisten Code kannst du ja entfernen, wenn du nichts in der Richtung machst, ist der ja nicht relevant, es sei denn du siehst, dass das Problem dann nicht mehr auftritt. Aber auch das wäre ja schon hilfreich zu wissen.
Martok - Di 18.06.13 10:38
gizmo hat folgendes geschrieben : |
In Form.Create habe ich nur BorderStyle:=bsDialog |
Ich bin mir relativ sicher, dass Dialoge keinen TaskbarButton haben können, da sie keine Titelleiste haben. Kann das mal wer nachprüfen, ich hab grad kein neues Delphi hier?
gizmo - Di 18.06.13 13:10
Ich habe es gefunden. Ein Vergleich mit früheren Projekten ergab lediglich einen Unterschied:
Die Zeile "Application.MainFormOnTaskbar:=true" gibt es in den Quelltexten anderer Projekte nicht.
Ich habe die Zeile auskommentiert und nun bekomme ich auch eine Schaltfläche in der Task Leiste.
Verstehen tue ich das allerdings nicht. Auch weiß ich nicht wie der Eintrag entstanden ist - ich habe das nicht dort hin geschrieben.
Ich danke euch für eure Bemühungen. Bis auf das zurückbleibende Unverständnis ist das Problem gelöst.
Beste Grüße
Gizmo
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!