Autor Beitrag
DIGIMan
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: Di 03.06.03 20:57 
Servus,
wir suchen einen Komponenten um die Fenster zu positionieren.

Wenn ich in der Konfig einstelle Oben/Mitte dann soll sich die Form dort befinen oder Unten/Recht oder Unten/Links...

Kennt jemand so eine Kostenlose Komponenten für Delphi 6-7?

Bin über jede Hilfe dankbar...!

DIGIMan
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Di 03.06.03 21:26 
Das kannst du doch mit ein paar Zeilen in deinem Programm schreiben:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
///Oben links
Form1.Top:=0;
Form1.Left:=0;

///Oben rechts
Form1.Top:=0;
Form1.Left:=Screen.Width-Form1.Width;

///Oben mitte
Form1.Top:=0;
Form1.Left:=(Screen.Width DIV 2)-(Form1.Width DIV 2)

///Unten links
Form1.Top:=Screen.Height-Form1.Height;
Form1.Left:=0;

///Unten rechts
Form1.Top:=Screen.Height-Form1.Height;
Form1.Left:=Screen.Width-Form1.Width;

///Unten mitte
Form1.Top:=Screen.Height-Form1.Height;
Form1.Left:=(Screen.Width DIV 2)-(Form1.Width DIV 2);


Um das Programm ganz in die Mitte zu setzen, gibt es die Möglichkeit im OI die Position der Form auf poScreenCenter zu setzen. :-)

_________________
Hasta La Victoria Siempre
Klabautermann
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Veteran
Beiträge: 6366
Erhaltene Danke: 60

Windows 7, Ubuntu
Delphi 7 Prof.
BeitragVerfasst: Mi 04.06.03 10:50 
Hallo,

suchtst du wirklich eine CLX Komponente oder doch eine Klassische VCL Lösung?

Gruß
Klabautermann
DIGIMan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: Mi 04.06.03 23:27 
Servus,

Klabautermann hat folgendes geschrieben:
suchtst du wirklich eine CLX Komponente oder doch eine Klassische
VCL Lösung?


Was ist der Unterschied?

Hallo Terra23

Deine Variante hat funktioniert, aber wie kann man noch eine Einstellung einbinden, das sich mein Formular nicht über den Bildschirmrand Links/Rechts verstecken/Verschieben läßt?

Kann man diese vielleicht Festpositionieren, dass der User nicht das Fenster verschieben kann?

Gruß DIGIMan

Moderiert von user profile iconKlabautermann: Quote-Tags hizugefügt.
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Do 05.06.03 00:45 
Ich weiß, daß das funktioniert. Das ist ja auch Grundlage, die beherrsche ich soweit. :mrgreen:

Das andere steuerst du per Timer:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
Form1.Timer1OnTimer(Sender: TObject);
begin

///Form nicht über den oberen Rand schieben lassen
If Form1.Top<0
Then Form1.Top:=0;

///Form nicht über den unteren Rand schieben lassen
If Form1.Top>Screen.Height-Form1.Height
Then Form1.Top:=Screen.Height-Form1.Height;

///Form nicht über den linken Rand schieben lassen
If Form1.Left<0
Then Form1.Left:=0;

///Form nicht über den rechten Rand schieben lassen
If Form1.Left>Screen.Width-Form1.Width
Then Form1.Left:=Screen.Width-Form1.Width;

end;


Das müßte so gehen, oder? Was meinst du?


///edit -> Ich denke, das was Klabautermann meint, ist einfach folgendes:

Die VCL-Lösung ist das, was ich dir geschrieben habe, sprich die Lösung durch Programmzeilen und die andere Variante ist eine Komponente, die das alles für dich macht, sprich für dich quasi das Formular und dessen Positionen verwaltet. Richtig, Klabauter?

_________________
Hasta La Victoria Siempre
Klabautermann
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Veteran
Beiträge: 6366
Erhaltene Danke: 60

Windows 7, Ubuntu
Delphi 7 Prof.
BeitragVerfasst: Do 05.06.03 12:13 
Hallo,
DIGIMan hat folgendes geschrieben:
Klabautermann hat folgendes geschrieben:
suchtst du wirklich eine CLX Komponente oder doch eine Klassische
VCL Lösung?

Was ist der Unterschied?

Terra23 hat folgendes geschrieben:
///edit -> Ich denke, das was Klabautermann meint, ist einfach folgendes:
Die VCL-Lösung ist das, was ich dir geschrieben habe, sprich die Lösung durch Programmzeilen und die andere Variante ist eine Komponente, die das alles für dich macht, sprich für dich quasi das Formular und dessen Positionen verwaltet. Richtig, Klabauter?

nein, nciht wirklich. Seit der Einführung von Kylix gibt es neben den VCL-Komponenten (Visual Komponent Library) auch die CLX-Komponenten (Component Library for Cross Platform). Letztere funktionieren dann sowohl unter Kylix als auch in Deilphi-CLX-Anwendungen (ab Delphi 6 in mindestes der Pro ausführung möglich). Und diese Forumskathegorie ist für eben solche CLX-Anwendungen zuständig. Wenn also nach einer Komponente für ein klassisches Delphi-VCL Programm gefragt wurde, dann gehört die Frage nicht in diese Kathegorie und ich muss sie verschieben. Das versuche ich nur fest zu stellen.

Gruß
Klabautermann

PS: Die lösung ist sehr warscheinlich algemeingülltig, daher kann ich es auch nciht von dieser ableiten ;).
DIGIMan Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 37



BeitragVerfasst: Mo 09.06.03 21:35 
Servus,

so mit den Fenster klapt es super, das dieses immer im Bildschirm bleibt.
Nur wie kann ich es machen, das es auch immer im Vordergrund bleibt?

Bitte beachten, das es sich hier nicht nur um ein Form handelt. In der Software is dies Form3.

Thx DIGIMan
Terra23
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 872

Win 8
Delphi 7
BeitragVerfasst: Di 24.06.03 23:46 
@Digiman:

Das erstere kannst du irgendwo im OI einstellen (fsStayOnTop oder so).

Zweiteres:

Bitte beachten:

Den Code kannst du in jede deiner Formen einbinden. Weiterhin ist auch bitte mal ein wenige Eigeninitiative nötig, wenn du was möchtest. Ich kann dir doch hier nicht zu allem die Lösung hinschreiben. Überleg' doch bitte auch mal ein wenig, denn wenn du nur Copy & Paste praktizierst, ohne den Sinn verstehen zu wollen, dann tut mir das leid, aber dann bin ich der falsche Ansprechpartner. Nichts für Ungut, aber auseinandersetzen mußt du dich schon mit der Materie..

_________________
Hasta La Victoria Siempre