Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Setzt andere Programme in die TNA (https://www.delphipraxis.net/6237-setzt-andere-programme-die-tna.html)

Alexander 4. Jul 2003 19:12

@Luckie: Achja der Explorer. Stimmt. Wusste doch das ich was übersehen habe
Ich muss wohl ein Genie sein. Die Anwendungsicons von den Programmen werden eigentlich gar nicht mit ins PopUp-Menü aufgenommen :mrgreen:
Ich speichere Handle und Titel in einem Array of String (dynamisch). eigentlich ganz simpel.
Das mit dem Speichern baue ich auch noch ein, das ist eine gute Idee.
Morgen werde ich das aber erstmal auf eine ListView umbauen.

@Jens Schumann
Du meinst jetzt nciht den Windows Explorer (also den Datei-Explorer), sondern den Explorer, oder?
Wie hast du denn den Explorer versteckt bekommen?
Eigentlich sollten nämlich im Fenster-Manager nur die FEnster aufgelistet werden, die auch in der Taskbar sind. Oder hast du es über "aktives Fenster hinzufügen" gemacht? Wenn ja dann muss ich das auch noch überprüfen :(

Danke aber schon mal für's testen und für die Ideen. Noch mehr Ideen und TEst's schaden natürlich nicht ;-)

Jens Schumann 4. Jul 2003 19:17

Hallo Alexander,
ich habe den Fenstermanager aufgerufen. Im TStringGrid werden mir die gestarteten Windows Explorer Instanzen angezeigt. Die sind ja auch in der TaskBar zu sehen. Dann habe ich eine Explorer Instanz markiert und auf verstecken geklickt. Und - schwubs war der TaskBar verschwunden.

Alexander 4. Jul 2003 19:19

Och ne...Wie kommmt das denn. Bei mir tritt dieser FEhler nicht auf.
Welches Windows benutzt du?

toms 4. Jul 2003 20:36

Delphi Anwendungen lassen sich nicht verstecken.

Alexander 5. Jul 2003 11:03

Hi,
vielen Dank für's testen.
Doch meinst du Anwendungen die mit Delphi erstellt worden sind oder Delphi selbst?
Denn mit normalen Anwendungen wie beispielsweise der IE sollte keine Probleme machen.
Einzig MDI-Anwendungen und solche wie Delphi (mit verschiedenen Forms) machen Probleme. Da über "aktives Fenster verstecken" bisher nur das aktive Fenster versteckt wird. Also bei Delphi nur das Fenster (z.B. der Editor), das aktiv ist, versteckt wird. Die anderen bleiben sichtbar.
Hat vielleicht wer eine Lösung wie ich von einem Handle des "Child-Fensters" das "Main-Fenster-Handle" bekommen kann?

Chewie 5. Jul 2003 11:19

Zitat:

Zitat von alexander
Hat vielleicht wer eine Lösung wie ich von einem Handle des "Child-Fensters" das "Main-Fenster-Handle" bekommen kann?

Das sollte so gehen:
Delphi-Quellcode:
ShowWindow(GetWindow(Form1.Handle, GW_OWNER), SW_HIDE);

Alexander 6. Jul 2003 09:26

Liste der Anhänge anzeigen (Anzahl: 1)
So nun ist Version 0.8 fertig.
Ich habe nun eine Listview verwendet. Und in die Listview Checkboxen für's anzeigen und verbergen mit eingebaut.
Dann wurde noch ein Bug enfernt. (manchmal kan eine Zugriffsverletzung.)
Außerdem hat das Programm jetzt dank Luckie einen Namen und das Design wurde dementsprechend geändert.

In der nächsten Verison werde ich dann die anderen Vorschläge berücksichtigen wie zb der von Luckie, dass man die versteckten Fenster speichern und somit beim nächsten Start gleich verstecken kann, usw.

Vielen Dank schonmal für's weitere Testen.

PS: @mods könnt ihr vielleicht in meinem ersten Post die zip ersetzen oder einen Verweiß hierauf setzen? Danke!

Tom 6. Jul 2003 09:55

Version 0.8

Ein paar "Unschönheiten":
- Wieso wird Deine eigenes Programm angezeigt? Entbehrt einem gewissen Sinn.
- Wieso reagiert Dein TNA-Icon nicht auf Klick bzw. Doppelklick.
- Das Popup schließt sich nicht, wenn man daneben klickt.
- Wieso zeigt das Hint der TNA "TNA" ab?

Die Bug-Abteilung:
- Ein Programm mal ausgewählt in der Fensterliste
- Fenstermanager schließen
- Es wird doppelt im TNA-Popup angezeigt ...
- Fenstermanager wieder aufrufen: auch doppelt ...
- Beim 1. der dopplten mal die Checkbox angeklickt ...
- Eine kleine Zugriffsverletzung ...

Und noch einer:
- Akitves Fenster hinzufügen (wird jetzt nur einmal angezeigt ...)
- Dein Programm schließen
- Und nun, wie komme ich wieder an mein Programm?

Testsystem: W2k

Alexander 6. Jul 2003 10:13

Hi,
das mit dem ersten Bug ist mir auch gerade aufgefallen.
Doch irgendwie ist das total unlogisch.
wollte kucken ob vielleicht meine Funktion 2 mal ausgeführt wird (wäre ja logisch), also schreibe ich ShowMessage(''); dahin, dann tritt dieser Fehler mit den 2 Einträgen nicht auf, nehme ich das ShowMessage wieder weg, ist er wieder da.
Kann mir irgendwer mal sagen, was sich delphi dabei denkt? :mrgreen:

Diese "Unschönheiten" wollte ich eigentlich auch schon korrigiert haben, wusste das ich was vergessen habe...Bisauf das sich das PopUp nicht schließt weiß irgendwer wie das geht?

Und der 2. "bug" das weiß ich kommt auch noch....

Gast 6. Jul 2003 12:28

GetParent() ist sogar noch simpler als GetWindow *grins*

Zeig deinen Code mal komplett, dann kann man dir evtl. helfen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:04 Uhr.
Seite 2 von 3     12 3      

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