AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Panel bewegen und groesse auf Form ändern ? 2

Panel bewegen und groesse auf Form ändern ? 2

Ein Thema von Dark_Alfred · begonnen am 17. Jul 2008 · letzter Beitrag vom 8. Aug 2008
Antwort Antwort
Dark_Alfred

Registriert seit: 17. Jul 2008
4 Beiträge
 
#1

Panel bewegen und groesse auf Form ändern ? 2

  Alt 17. Jul 2008, 13:02
Hi ich hab mal eine weiterführende Frage zu dem bereits beantworteten Thema (Link) und zwar folgende:
Wie kann ich die größe des Panels automatisch an die größe der Form anpassen? Wenn jeder User einen anderen Monitor (Größe/Auflösung,Höhe-Breite-Verhältnis) hat und ich das Programm also die Form maximiere das sich das Panel der größe anpasst? Es sieht blöd aus wenn die Hälfte des Programms dieses Panel ist und die andere Hälfte "leer" und ungenutzt ist. So muss der User in dem Panel auch unnötig viel Scrollen und vor allem wegen der Optik würd ich das halt gern vermeiden. Ich hoffe ihr könnt mir helfen.
MfG.Alfred
  Mit Zitat antworten Zitat
Benutzerbild von Diamondback2007
Diamondback2007

Registriert seit: 2. Feb 2007
260 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 17. Jul 2008, 13:08
Guck dir mal die Eigenschaft "Anchors" im Objektinspektor an.
Fabian E.
  Mit Zitat antworten Zitat
Dark_Alfred

Registriert seit: 17. Jul 2008
4 Beiträge
 
#3

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 17. Jul 2008, 19:46
Nein das funktioniert leider nicht. mache ich [akLeft,akTop,akRight] also ausgerichtet nach oben, links und rechts hab ich immernoch diese Freifläche rechts weiß aber nicht woran das liegt
  Mit Zitat antworten Zitat
Benutzerbild von Diamondback2007
Diamondback2007

Registriert seit: 2. Feb 2007
260 Beiträge
 
Delphi 2007 Professional
 
#4

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 17. Jul 2008, 20:20
Dann kannst du das manuell im OnResize-Ereignis deiner Form machen.
Fabian E.
  Mit Zitat antworten Zitat
Dark_Alfred

Registriert seit: 17. Jul 2008
4 Beiträge
 
#5

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 18. Jul 2008, 00:09
sry mit diesen Ereignissen hab ich bisher net so gearbetet bisher nur schuldelphi kannst du mir sagen wie ?
wäre wirklich super !
  Mit Zitat antworten Zitat
Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#6

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 18. Jul 2008, 02:41
Die Anchors verändern nur das Vergrößeungsverhalten, du musst die Komponente also erst bis auf den gewünschten Randabstand ziehen, dein Fall hört sich aber eher nach Align:= alClient; an. Das sollte hier eher den von dir gewünschten Effekt haben.
  Mit Zitat antworten Zitat
Benutzerbild von Diamondback2007
Diamondback2007

Registriert seit: 2. Feb 2007
260 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 18. Jul 2008, 09:12
Zitat von Dark_Alfred:
sry mit diesen Ereignissen hab ich bisher net so gearbetet bisher nur schuldelphi kannst du mir sagen wie ?
wäre wirklich super !
Ganz einfach. Du klickst in der IDE auf deine Form. Dann gehst im Objektinspektor(normalerweise links, das Teil wo du sowas wie "Caption" einstellen kannst) auf Events oder Ereignisse oder sowas in der Richtung (je nach Sprache von deinem Delphi halt anders).
Dort siehst du dann aufgelistet alle Events deiner Form. Machst du nun einen Doppelklick auf eines dieser Events, so erstellt Delphi automatisch eine dazugehörige Methode und springt im Quellcode zu dieser.
Wie gesagt ist für dich die OnResize-Methode wichtig. Diese wird immer dann aufgerufen, wenn sich die Größe deiner Form verändert.
In dieser Methode kannst du dann über die Eigenschaften Width und Height deiner Form und auch deines Panels die Größe des Panels anpassen.
Fabian E.
  Mit Zitat antworten Zitat
Dark_Alfred

Registriert seit: 17. Jul 2008
4 Beiträge
 
#8

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 18. Jul 2008, 14:37
ok Super danke für den Tipp funktioniert!!! Nur musste es über eine IF Anweisung machen weil das Panel eine bestimmte mindestgröße brauch um alle Objekte drin anzeigen zu können.

Hier mal der Quelltext dafür:

Code:
procedure TForm4.FormResize(Sender: TObject);
begin
if Form4.Width > 1179 then
begin
Panel1.Width:=Form4.Width;
end
else
begin
Panel1.Width:=1179;
end;

if Form4.Height >818 then
begin
Panel1.Height:=Form4.Height;
end
else
begin
Panel1.Height:=818;
end;
Die Zahlen und FormX müsst ihr dann nur noch anpassen
danke nochmal klappt prima
  Mit Zitat antworten Zitat
Benutzerbild von Glühwürmchen
Glühwürmchen

Registriert seit: 31. Okt 2003
Ort: Pfinztal
156 Beiträge
 
Delphi 2010 Professional
 
#9

Re: Panel bewegen und groesse auf Form ändern ? 2

  Alt 8. Aug 2008, 16:16
Ist zwar schon eine Weile her, aber ich möchte trotzdem noch meinen Senf dazu geben.

Die IF-Abfrage wegen der Mindestgröße kannst Du Dir sparen.
Delphi bietet nämlich eine Eigenschaft an, die das für Dich erledigt:

"Constraints"
Hier kannst Du bei "MinHeight" und "MinWidth" Deine Mindestgröße angeben.
Null (in Zahlen: 0) bedeutet: Keine Mindestgröße.
Gruß Glühwürmchen
<><
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:54 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