Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Andere Forms unter eigenem platzieren (https://www.delphipraxis.net/2319-andere-forms-unter-eigenem-platzieren.html)

CalganX 17. Jan 2003 16:30


Andere Forms unter eigenem platzieren
 
Hi,
ich wollte mal fragen: wie kann ich mein Formular so platzieren, dass alle anderen Formulare (nicht nur von meiner Anwendung) unter meinem Form sind? Mein Formular ist immer ganz oben...

Chris

Alexander 17. Jan 2003 16:33

meinst du fstayontop?

CalganX 17. Jan 2003 16:34

Fast, aber das Problem ist, dass mein Form niemals ein anderes Überdecken soll.

Chris

lodda 17. Jan 2003 16:41

Aber wenn dein Formular ganz oben ist, und viele andere Formulare da sind, dann verdeckt es die anderen ganz automatisch.

Alexander 17. Jan 2003 16:46

dann versteh ich dich auch nicht? Was willst denn überhaupt genau machen

CalganX 17. Jan 2003 17:35

Hi,
also, nehmt euch mal das Programm X-Spy (zu finden in der Freewaresection)! Dort findet ihr ganz oben vom Screen das Programm. Und alle anderen Programme sind darunter, selbst wenn diese maximiert sind.
Und diesen Effekt suche ich.

Chris

Christian Seehase 17. Jan 2003 18:32

Moin Chris,

ich denke, da solltest Du mal unter dem Stichwort SHAppBarMessage im PSDK nachschlagen (ob's hier schon ein funktionsfähiges Beispiel gibt weiss ich nicht genau).

Diese AppBars kann es gleichzeitig genau vier geben, an jedem Bildschirmrand eine, wobei die Taskleist ja immer schon eine Seite belegt.

CalganX 17. Jan 2003 18:47

Hi,
erstmal danke, allerdings habe ich im MSDN nach "SHAppBarMessage" gesucht, aber leider nichts gefunden... Idee?

Chris

Alexander 17. Jan 2003 18:51

Liste der Anhänge anzeigen (Anzahl: 1)
also im PSDK vom August steht die Funktion drin.
Kuck mal in den Anhang

CalganX 17. Jan 2003 18:55

Entweder habe ich einen schlechten Tag, oder ich habe einen totalen BlackOut! Wo suche ich? Beim MSDN... *grr* Naja, trotzdem danke. Werde mir das ganze mal ansehen...

Chris

CalganX 17. Jan 2003 19:08

Hi,
also um meine Frage selber zu beantworten: schlechter Tag!
Das ich beim MSDN gesucht habe war ja richtig, aber wenn dann diese ********************* (selbst-zensierung) MSDN-Seite mir keine Ergebnisse ausspuckt, dann werde ich deprimiert... *deprimiertsei*

Nun zurück zum Thema. Ich habe mir gerade die Struktur APPBARDATA durchgelesen und steige da nicht ganz durch. Link: http://msdn.microsoft.com/library/de...appbardata.asp
Nun meine Frage: wie belege ich den 2. Parameter von SHAppBarMessage? Muss ich da eine neue Variable machen, oder was?

Chris

Christian Seehase 17. Jan 2003 22:00

Moin Chris,

der zweite Parameter muss eine Variable von Typ APPBARDATA sein.

Falls Du es nicht gemacht hattest:
Wenn Du im MSDN suchst, dann geh' am Besten auf Advanced Search, und markiere alle Checkboxen.
Das erhöht zumindest (oder auch mal leider ;-) ) die Anzahl der Fundstellen.
Ausserdem ist dann eine Suche unter Verwendung von and/or möglich.

CalganX 18. Jan 2003 09:20

Hi,
so habe jetzt eine Variable vom Typ _APPBARDATA (Underscore nicht vergessen!). Ich habe auch schon einige Eigenschaften ausgefüllt, aber folgende fehlen mir noch. Dort weiß ich nicht was ich da eingeben soll:
Der Size-Parameter
der Callback-Parameter...

Chris

sakura 18. Jan 2003 09:54

Die Variable Size füllst Du mit der Größe der Strukture _AppBarData. Wenn ABD eine Variable von Typ _AppBarData ist, dann schreibe folgendenen Code
Delphi-Quellcode:
ABD.Size := SizeOf(_AppBarData);
uCallbackMessage ist ein Pointer auf eine lokale Prozedur mit mir unbekannten Parametern.
...:cat:...

CalganX 18. Jan 2003 10:09

Hi sakura,
ja, aber welche Funktion soll ich bei uCallbackMessage angeben???

Chris

Christian Seehase 18. Jan 2003 14:43

Moin Zusammen,

uCallBackMessage ist kein Pointer auf eine Callback Funktion, sondern die Message, die das System verschickt, wenn sie die Appbar über irgendetwas informieren will.
Diese sollte man mit RegisterWindowMessage erzeugen, und wird dann mit dem Aufruf von ABN_NEW registriert (siehe PSDK Doku zu ABN_NEW).
Diese Message kann dann wohl in der WndProc abgefragt werden.
Ausprobiert hab' ich das auch noch nicht, dürfte aber das gleiche Prinzip sein wie bei Shell_NotifyIcon.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:25 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