Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Form immer in Vordergrund (https://www.delphipraxis.net/114261-form-immer-vordergrund.html)

Delphiturbo 22. Mai 2008 13:21


Form immer in Vordergrund
 
Hallo

ist es möglich den Code für jede Programm-Form zu verwenden ?
Ich habe den Code getestet. Es funktioniert aber nur bei MainForm !

Ich möchte aber den Code in Form2 verwenden
Delphi-Quellcode:
SetWindowPos(Handle, HWND_TOPMOST, Left,Top, Width,
             Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);

Daniel 22. Mai 2008 13:26

Re: Form immer in Vordergrund
 
Hast Du es schon mal mit der Eigenschaft "FormStyle" vesucht?

mkinzler 22. Mai 2008 13:32

Re: Form immer in Vordergrund
 
Oder man verwendet den Handle der gewünschten Form

Hansa 22. Mai 2008 13:42

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
ist es möglich den Code für jede Programm-Form zu verwenden ?..

Packe alles was jede Form sowieso braucht in eine Vorlage-Form und verfrachte die in die Objektablage. Jede Form, die diese Eigenschaften auch haben soll, die wird dann statt Datei -> neu -> Form, mit Datei -> neu -> weitere -> <Form selber suchen und auswählen> neu erzeugt. Dabei ist es völlig egal, ob da schon vorher im OI definierte Einstellungen, irgendwelche Buttons usw. drauf sind. Gilt auch für Ereignisse.

rotfc 22. Mai 2008 13:57

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
Hallo

ist es möglich den Code für jede Programm-Form zu verwenden ?
Ich habe den Code getestet. Es funktioniert aber nur bei MainForm !

Ich möchte aber den Code in Form2 verwenden
Delphi-Quellcode:
SetWindowPos(Handle, HWND_TOPMOST, Left,Top, Width,
             Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);

Dem Prinzip nach wohl schon. Wenn aber gerade Form2 fsStayOnTop ist, bekommst Du leider die MessageBox von Form1 nicht mit, die Dir gerade einen Fehler mitteilen will, da sie von Form2 überlagert wird.

Delphiturbo 22. Mai 2008 13:59

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Daniel
Hast Du es schon mal mit der Eigenschaft "FormStyle" vesucht?

ja schon ausprobiert. Es gilt nur für MainForm. Also gleiche Problem wie von dem Code oben

Was Hansa geschrieben hat, heisst das ich muss die Form von vorne erstellen?
Ich möchte nicht meine Form2 löschen und wieder alles programmieren

Delphiturbo 22. Mai 2008 14:00

Re: Form immer in Vordergrund
 
Zitat:

Zitat von rotfc

Dem Prinzip nach wohl schon. Wenn aber gerade Form2 fsStayOnTop ist, bekommst Du leider die MessageBox von Form1 nicht mit, die Dir gerade einen Fehler mitteilen will, da sie von Form2 überlagert wird.

Ich möchte nicht alle Forms diese Eigenschaften haben, sondern nur Form2 (die nicht die MainForm ist)

Hansa 22. Mai 2008 14:11

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
..Ich möchte nicht meine Form2 löschen und wieder alles programmieren

Dann schiebe die Form2 in die Objektablage, sobald sie geht und leite davon wie beschrieben eine neue ab. Das kann auch die Mainform sein. Beide haben dann anfangs gleiche Eigenschaften. Gucke mal in die DPR. Da steht in welcher Reihenfolge die Forms erzeugt und auch angezeigt werden. Alternative : keine Wiederverwendung, sondern alles mehrfach machen. Z.B. mit cut and paste. Sofern der Wartungsaufwand unwichtig ist geht das auch. Z.B. bei Mini-Programmen oder wirklich ganz ganz speziellen Forms, von denen wirklich absolut gar nichts woanders verwendet werden kann/muss. Überlege dir mal, wieviele Forms überhaupt gebraucht werden. Sind es mehr als zwei, dann gilt : Objektablage verwenden. Alleine schon wegen einheitlicher Farb/Schrifteinstellungen. Ist irgendwas im OI abweichend von den Delphi-Standardeinstellungen, dann braucht man das nur an einer Stelle zu ändern und nicht womöglich an hunderten.

Delphiturbo 22. Mai 2008 14:12

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Hansa
Packe alles was jede Form sowieso braucht in eine Vorlage-Form und verfrachte die in die Objektablage. statt Datei -> neu -> Form, mit Datei -> neu -> weitere -> <Form selber suchen und auswählen>

Wo Soll ich meine Form als Vorlage speichern? (Objektablage). Ich habe D7
Über Datei -> neu -> weitere gibt mir keine Möglichkeit meine Form zu suchen

Hansa 22. Mai 2008 14:14

Re: Form immer in Vordergrund
 
Zuerst rechter Mausklick auf der Form.

mkinzler 22. Mai 2008 14:16

Re: Form immer in Vordergrund
 
Projekt->Zur Objektablage hinzufügen

Daniel 22. Mai 2008 14:17

Re: Form immer in Vordergrund
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Delphiturbo
Zitat:

Zitat von Daniel
Hast Du es schon mal mit der Eigenschaft "FormStyle" vesucht?

ja schon ausprobiert. Es gilt nur für MainForm.

Das glaube ich Dir nicht. Ich habe mal einen Screenshot angefügt, der zeigt, dass zwei (!) Fenster einer Anwendung vorn sein können, während ich hinten im Browser tippe. Warum also ist die Benutzung der Eigenschaft "FormStyle" kein für Dich akzeptabler Weg?


Also nochmal von vorn: WAS willst Du erreichen, WAS geht nicht und WAS hast Du schon versucht? Wenn Du merkst, dass Du Schwierigkeiten hast, das Problem konkret zu beschreiben, so ist dies ein deutliches Anzeichen dafür, dass Du noch ein wenig länger darüber brüten musst. Und wenn Du es selbst schon nicht verstanden hast, wie können wir Dir dann helfen? Deine Fehlerbeschreibungen führen dazu, dass wir uns im Kreise drehen - und den ersten wurde wohl kürzlich übel. :cyclops:

Delphiturbo 22. Mai 2008 14:19

Re: Form immer in Vordergrund
 
Also für englische-Version "To Repository"
ich teste zuerst das ganze in ein neues Projekt

Hansa 22. Mai 2008 14:20

Re: Form immer in Vordergrund
 
Muss mkinzler widersprechen. Besser ist rechter Mausklick. Unterschied : bereits vorhandene Forms sind zu sehen, über Projekt nicht.

Delphiturbo 22. Mai 2008 14:31

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Daniel
Zitat:

Zitat von Delphiturbo
Zitat:

Zitat von Daniel
Hast Du es schon mal mit der Eigenschaft "FormStyle" vesucht?

ja schon ausprobiert. Es gilt nur für MainForm.

Das glaube ich Dir nicht. Ich habe mal einen Screenshot angefügt, der zeigt, dass zwei (!) Fenster einer Anwendung vorn sein können, während ich hinten im Browser tippe. Warum also ist die Benutzung der Eigenschaft "FormStyle" kein für Dich akzeptabler Weg?

Nicht so schnell. Ich verwende D7 du nicht. das kann auch der Grund sein
Ich habe ein neues Projekt mit 2 Forms und für jede Form habe ich den Style fsStayOnTop in OI gewählt. trotzdem bleiben die Form nicht im Vordergrund :!:

Ich werde aber die Idee von einer Vorlage testen

Delphiturbo 22. Mai 2008 14:46

Re: Form immer in Vordergrund
 
Mit dem Vorschlag von Hansa indem man eine Form als Vorlage stellt und dann hinzufügt, hat es gut geklappt. Danke!

Den Test habe ich bei einem neuen Projekt. Ich weiß aber nicht ob ich irgendwie die Eigenschaften dieser Form in meine Form2 Problemlos mit Copy u. Paste übernehmen kann :gruebel:

Delphiturbo 22. Mai 2008 15:13

Re: Form immer in Vordergrund
 
Ich war zu schnell
Die habe den Test wiederholt, dann bleibt Form2 leider nicht mehr im Vordergrund
Vielleicht habe ich versehen zwi Projekt mit einer Form und meinen Test mit zwei Forms

Also die Vorlage bringt leider auch nichts
Ich werde den Test mit einer anderen Version von Delphi ausführen

DP-Maintenance 22. Mai 2008 15:27

DP-Maintenance
 
Dieses Thema wurde von "Sharky" von "Multimedia" nach "VCL / WinForms / Controls" verschoben.
Hat nicht mit Multimedia zu tun

Sharky 22. Mai 2008 15:28

Re: Form immer in Vordergrund
 
Hallo Delphiturbo.

Dies ist von mir die letze Warnung :!:

Pusche keine Beiträge und halte dich entgültig an die Regeln der Delphi-PRAXiS.

Wenn du das nicht möchtest oder kannst verlasse das Forum :!:

Phoenix 22. Mai 2008 15:30

Re: Form immer in Vordergrund
 
Hallo Delphiturbo,

das Antworten auf eigene Beiträge (sog. Pushen) solltest Du am besten unterlassen. Das ist hier nicht gerne gesehen.

Solange noch keine 24 Stunden vergangen, editiere einfach Deinen letzten Beitrag und hänge die neuen Informationen einfach hinten an. Danke.

Edit: Wo war der rote Kasten?

rotfc 22. Mai 2008 15:34

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
Zitat:

Zitat von Daniel
Zitat:

Zitat von Delphiturbo
Zitat:

Zitat von Daniel
Hast Du es schon mal mit der Eigenschaft "FormStyle" vesucht?

ja schon ausprobiert. Es gilt nur für MainForm.

Das glaube ich Dir nicht. Ich habe mal einen Screenshot angefügt, der zeigt, dass zwei (!) Fenster einer Anwendung vorn sein können, während ich hinten im Browser tippe. Warum also ist die Benutzung der Eigenschaft "FormStyle" kein für Dich akzeptabler Weg?

Nicht so schnell. Ich verwende D7 du nicht. das kann auch der Grund sein
Ich habe ein neues Projekt mit 2 Forms und für jede Form habe ich den Style fsStayOnTop in OI gewählt. trotzdem bleiben die Form nicht im Vordergrund :!:

Ich werde aber die Idee von einer Vorlage testen

Na schön, Du verwendest D7. Welche Version? Personal, Professional, Enterprise?

@sharky: Warnung wohlwollend zur Kenntnis genommen :mrgreen:

Delphiturbo 22. Mai 2008 15:38

Re: Form immer in Vordergrund
 
Jetzt verstehe ich was Pushen ist :mrgreen: . Danke Phoenix
Ich werde zukünftig nicht wiederholen. Regeln sind Regeln

Es ist so von mir gedacht, wenn ich erneut eine Antwort schreibe, bekommen alle User,
die mit diesem Thema beteiligt sind, eine Email von DP. Und bei einfach Editieren nicht oder?

Die Muhkuh 22. Mai 2008 15:45

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
Es ist so von mir gedacht, wenn ich erneut eine Antwort schreibe, bekommen alle User,
die mit diesem Thema beteiligt sind, eine Email von DP. Und bei einfach Editieren nicht oder?

Sie bekommen erst wieder eine Mail, wenn sie in das Thema reingeschaut haben. Das heißt, Du könntest 10x hintereinander posten, aber der Benutzer würde, sofern er das Feature aktiviert hat, nur einmal eine E-Mail bekommen und erst dann wieder eine, wenn er in das Thema reingesehen hat.

Und ja, beim Editieren kommt keine Mail.

Delphiturbo 22. Mai 2008 16:10

Re: Form immer in Vordergrund
 
>> Na schön, Du verwendest D7. Welche Version? Personal, Professional, Enterprise?
Ich verwende D7 Pro englisch

Ich habe auch gerade den Test mit der Delphi Version in : Borland Devloper Studio 2006

Ich weiß nicht, wieso bleibt Form2 (die keine MainForm ist) bei Daniel immer im Vordergrung


Update:
Nun weiß ich warum Daniel dennkt, es hat bei ihm funktioniert
Er hat die Mainform (Form1) nicht ausgeblendet
Du kannst ein Button in Form2 anlegen und dann die Form1 ausblenden
Dann wirst Du wundern :mrgreen:

Delphi-Quellcode:
Die Form2 kann nicht mehr im Vordergrund bleiben

Hansa 22. Mai 2008 19:31

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
Mit dem Vorschlag von Hansa indem man eine Form als Vorlage stellt und dann hinzufügt, hat es gut geklappt. Danke! ..dieser Form in meine Form2 Problemlos mit Copy u. Paste übernehmen kann :gruebel:

Das ist genau das, was nicht gemacht werden sollte !!

rollstuhlfahrer 22. Mai 2008 20:06

Re: Form immer in Vordergrund
 
Liste der Anhänge anzeigen (Anzahl: 1)
HI delphiturbo,

dein Code aus Post #1 funktioniert bei mir wunderbar. Auch die Eigenschaft fsStayOnTop. Im Anhang findest du einen Screenshot, der 3 Forms im Vordergrtund zeigt (1x Code, 2x fsStayOnTop).

Zitat:

Zitat von Delphiturbo
> Na schön, Du verwendest D7. Welche Version? Personal, Professional, Enterprise?
Ich verwende D7 Pro englisch

Ich habe auch gerade den Test mit der Delphi Version in : Borland Devloper Studio 2006

Ich verwende D7 Enterprise Deutsch.

Zitat:

Zitat von Delphiturbo
Nun weiß ich warum Daniel dennkt, es hat bei ihm funktioniert
Er hat die Mainform (Form1) nicht ausgeblendet
Du kannst ein Button in Form2 anlegen und dann die Form1 ausblenden
Dann wirst Du wundern :mrgreen: [/b]
Delphi-Quellcode:
Die Form2 kann nicht mehr im Vordergrund bleiben

Nicht zwingend notwendig. Wird die MainForm ausgebelendet mit Hide bleiben die anderen beiden im Vordergrund.

rollstuhlfahrer

Delphiturbo 22. Mai 2008 20:17

Re: Form immer in Vordergrund
 
Dann lege mal das Projekt in Anhang
Da ich selbe getestet habe :wink:

rollstuhlfahrer 22. Mai 2008 20:20

Re: Form immer in Vordergrund
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier dein Code, wenn auch etwas unfreiwillig, da ja eh "nichts" (oder nichts neues) drin steht

rollstuhlfahrer

Delphiturbo 22. Mai 2008 20:46

Re: Form immer in Vordergrund
 
Liste der Anhänge anzeigen (Anzahl: 1)
:!: :mrgreen: :!:
Also :wink:

rollstuhlfahrer 22. Mai 2008 20:47

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
:!: :mrgreen: :!:
Also :wink:

bei mir klappts wie du ja sehen kannst.

rollstuhlfahrer

Delphiturbo 22. Mai 2008 20:52

Re: Form immer in Vordergrund
 
Ja das glaube ich. Bei mir hat es geklappt aber ich habe hin und her geklickt bis auf einmal passiert :mrgreen:
Darum will ich nun mein Form2 als Mainform und ist das Problem gelöst
aber ich bekomme ein anderes Problem, wenn ich Form3 als Mainform mache,
dann startet die Form3 vor dem Form1 beim Programm-Start. Und das darf nicht passieren

rollstuhlfahrer 22. Mai 2008 20:54

Re: Form immer in Vordergrund
 
das hast du hier schon mal angesprochen und es gab sogar funktionierende Lösungen

rollstuhlfahrer

Daniel 23. Mai 2008 07:44

Re: Form immer in Vordergrund
 
Zitat:

Zitat von Delphiturbo
Update:
Nun weiß ich warum Daniel dennkt, es hat bei ihm funktioniert
Er hat die Mainform (Form1) nicht ausgeblendet
Du kannst ein Button in Form2 anlegen und dann die Form1 ausblenden
Dann wirst Du wundern :mrgreen:

Delphi-Quellcode:
Die Form2 kann nicht mehr im Vordergrund bleiben


JETZT rückst Du mit der Information raus, dass es gar nicht darum geht, zwei Fenster im Vordergrund zu behalten, sondern nur eines, nachdem das andere ausgeblendet wurde.

Glaubst Du im Ernst, dass Du unsere Zeit und Geduld in beliebigen Mengen verschwenden kannst, weil Du nur bruchstückhafte Informationen rausgibst und dadurch sämtliche Ansätze, Dir zu helfen, völlig irrelevant sind?

Es reicht wirklich.
* closed *


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