| Autor |
Beitrag |
Darkmorph
Hält's aus hier
Beiträge: 7
|
Verfasst: So 23.03.03 20:20
wie Der Titel impliziert möchte ich mein Programm in den Vordergrund, also vor alle anderen Anwendungen aufgrund eines beliebigen Events, bringen. ich dachte es währe BringToFront oder Application.BringToFront... aber ohne erfolg... hat niemand eine ahnung?
MfG Ben
|
|
AndyB
      
Beiträge: 1173
Erhaltene Danke: 14
RAD Studio XE2
|
Verfasst: So 23.03.03 20:25
Wieso sollte Application.BringToFront nicht funktionieren? Möchtest du dein Formular etwa über einem StayOnTop Fomular haben?
_________________ Ist Zeit wirklich Geld?
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 23.03.03 20:35
|
|
Darkmorph 
Hält's aus hier
Beiträge: 7
|
Verfasst: So 23.03.03 20:49
erstemal vielen dank für die Hilfe aber
funzt so nicht...
Quelltext 1:
| SetWindowPos(Form1.Handle, HWND_TOPMOST, 0, 0, 0, 0, [b]0,[/b] SWP_NOMOVE or SWP_NOSIZE); |
eine null zu viel
und STAYONTOP will ich nicht!!
ich will, das meine Applikation nach vorne kommt, wenn ich etwas empfange!!
hatte gedacht, es wäre mit bringtofront möglich, aber es passiert bei mir unter WINXP und WIN2k nicht.
Szenario:
Meine Applikation hinter einer anderen. Ich empfange Message. dann will ich das mein Prog nach vorne kommt!
Plz HelP
MorPH
|
|
Darkmorph 
Hält's aus hier
Beiträge: 7
|
Verfasst: So 23.03.03 20:54
hi,
ich nochmal
vielen dank nochmal für die hilfe an alle beteiligten
habe jetzt eine unschöne Methode benutzt, und zwar:
Quelltext 1: 2:
| SetWindowPos(Form1.Handle, HWND_TOPMOST, 0, 0, 0, 0,SWP_NOMOVE or SWP_NOSIZE); SetWindowPos(Form1.Handle, HWND_NOTOPMOST, 0, 0, 0, 0,SWP_NOMOVE or SWP_NOSIZE); |
diese funzt, ist aber nicht ideal... frag mich wieso es nicht mit BringToFront funktionierte...
MfG Morph
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 23.03.03 21:01
Sag mit noch mal das mein API-Lösung unschön ist.
Und anders geht es nicht und ohne VCL schon gar nicht.
fsStayOnTop würde noch gehen, aber da sagt die Hilfe:
| Zitat: |
Note: It is not advisable to change FormStyle at runtime.
|
Also ist meine Weg in Ordnung und auch richtig!
|
|
Alibi
      
Beiträge: 458
Win2K SP3
Delphi 6 Ent
|
Verfasst: So 23.03.03 21:03
Klappt
Form123.FormStyle := fsStayOnTop;
nicht?
|
|
Darkmorph 
Hält's aus hier
Beiträge: 7
|
Verfasst: So 23.03.03 21:07
@alibi
ich will nur das die fenster nach vorne kommen und nicht immer vorne bleiben sollen. ich habs ja jetzt so gelöst, das ich im grunde stayontop setze und dann wieder zurücksetze... siehe post weiter oben!
@Luckie
ich hatte früher einmal die funktion formx.bringtofront benutzt und damals hatte die auch glaube ich funktioniert... aber mittlerweile nicht mehr...
ich bin dir dankbar für deine hilfe. aber ein alwaysstayontop-value-change bewirkt doch im gerunde auch den aufruf deiner API-Funktion, oder lieg ich falsch?
Interpretiere das nicht als Auflehnung oder Angriff, ich bin nur verdutzt, das die BringToFront Funktion, deren Name und die Online-Hilfe sagen aus, das diese Die Applikation, bzw, die Form nach ganz vorne bringen, also vor alle anderen Fenster...
MfG MorPH
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: So 23.03.03 21:32
War ja auch nur als Scherz gemeint. 
|
|
wulfskin
      
Beiträge: 1349
Erhaltene Danke: 1
Win XP
D5 Pers (SSL), D2005 Pro, C, C#
|
Verfasst: So 23.03.03 21:44
Wir wär's mit: SetForegroundWindow(Handle);?
_________________ Manche antworten um ihren Beitragszähler zu erhöhen, andere um zu Helfen.
|
|
Darkmorph 
Hält's aus hier
Beiträge: 7
|
Verfasst: So 23.03.03 21:48
funzt auch nicht,
ist aber auch eigentlich das gleiche wie Bringtofront
SetForeGroundWindow(hwnd) wird von der BringtoFront-Funktion benutzt.
mFG BEN
|
|
Motzi
      
Beiträge: 2931
XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
|
Verfasst: Mo 24.03.03 12:20
Unter Win2k/XP kann man SetForegroundWindow irgendwie "deaktivieren". Auf www.swissdelphicenter.ch gibts aber einen Tipp der eine Funktion ForceForegroundWindow zeigt die das Fenster aber auf jeden Fall in den Vordergrund setzt.
_________________ gringo pussy cats - eef i see you i will pull your tail out by eets roots!
|
|