AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Form immer im vordergrund - Wirklich immer
Thema durchsuchen
Ansicht
Themen-Optionen

Form immer im vordergrund - Wirklich immer

Ein Thema von delphis spassbremse · begonnen am 15. Jun 2007 · letzter Beitrag vom 7. Nov 2011
Antwort Antwort
delphis spassbremse

Registriert seit: 7. Jun 2007
Ort: Enger
104 Beiträge
 
Delphi 7 Enterprise
 
#1

Form immer im vordergrund - Wirklich immer

  Alt 15. Jun 2007, 16:04
Hallo,

ich habe mir ein kleines Programm geschrieben, was mir
eine kleine Layerads statisik auf dem Bildschirm anzeigt.

Formstyle auf fsstayontop (ganz normal halt)

Bloß dann beim Booten kommt dann mein Programm zuerst hoch und danach
alle anderen.
Da gibts doch das böse MSN und setzt sich einfach davor.
(Machen andere Programme ebenso)

Nun zur eigentlichen Frage...
wie bekommt man es hin, dass das Form wirklich immer
im Vordergrund ist. z.B. auch wenn ein Vollbildspiel
geöffnet wird usw....

Hab evtl. gedacht man nehme einen Timer und haut ein show oder bringtofront rein...
ist aber ziemlich prozesslastig und stört andere Anwendungen.

Hat da jemand eine Idee, wie das Programm immer im Vordergrund bleibt?

MFG

Björn
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Form immer im vordergrund - Wirklich immer

  Alt 15. Jun 2007, 16:23
wie du schon festgestellt hast gibt es kein "immer oben" weil andere Programme das auch wollen. Wenn du also 2 solche Programme hast flackern diese ständig untereinander weil sich ständig das eine vor das andere setzt.
Bei Vollbild mit DirektX/OpenGl scheiterts dann ständig. Das 3D Spiel wird mit einer anderen Auflösung ausgeführt und solange dieses Programm im Vordergrund ist stellt dein Windows eben auf diese Auflösung um. Wenn du dein Programm jetzt in den Vordergrund bringst wird wieder die Auflösung deines Programmes gefahren, es wechselt also von der Auflösung des 3D Programmes zur Auflösung deines Programmes (die Auflösung deines Programmes ist die Std-Windows-Auflösung)
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
kalmi01
(Gast)

n/a Beiträge
 
#3

Re: Form immer im vordergrund - Wirklich immer

  Alt 15. Jun 2007, 18:11
Zitat von SirThornberry:
wie du schon festgestellt hast gibt es kein "immer oben" weil andere Programme das auch wollen.
Nö, probiers mal mit:
Delphi-Quellcode:
 SetWindowPos( Handle, <<< eigenes Window-Handle
               HWND_TOPMOST, <<<< immer Vorn
               Left,
               Top,
               Width,
               Height,
               0
             )

 SetWindowPos( Handle, <<< eigenes Window-Handle
               HWND_NOTOPMOST, <<< wieder normal
               Left,
               Top,
               Width,
               Height,
               0
             )
bei mir flackert da garnichts.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.079 Beiträge
 
Delphi 12 Athens
 
#4

AW: Form immer im vordergrund - Wirklich immer

  Alt 7. Nov 2011, 09:47
Ich weiß, ist schon etwas älter, aber dennoch

Zitat:
Nö, probiers mal mit:
StayOnTop nutzt auch einen State, wlcher dieses setzt.

Wobei immer das letzt Programm ganz oben angezeigt wird, welches als letztes diesen Style verpaßt bekommen hat.
Wollen mehrere Programme ganz nach oben schubst das letzt Programm die Vorgänger erstmal etwas runter ... weswegen die nachher gestarteten Programme eben doch davorkommen.

einzige Lösung: man muß den Style bei sich als letztes (neu) setzen.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
sHoXx
(Gast)

n/a Beiträge
 
#5

AW: Form immer im vordergrund - Wirklich immer

  Alt 7. Nov 2011, 13:18
genau damit hab ich mich auch vor ein paar tagen beschäftigt, bei mir hat folgendes geholfen

im OnShow der Fhab ich eingefügt:

SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE + SWP_NOMOVE + SWP_NOSIZE);
  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 22:59 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