Einzelnen Beitrag anzeigen

mz23
(Gast)

n/a Beiträge
 
#7

AW: Übereinanderliegende Panels im Formulardesigner

  Alt 14. Mär 2012, 06:56
Hallo,

ich möchte nicht wegen jeder möglichen Eingabe ein neues Fenster aufmachen. Wa sich nach meinem Dafürhalten sehr gut macht, sind mehrere übereinanderliegende Panels, von denen immer das gerade Relevante visible gesetzt wird. Funktioniert zur Laufzeit wunderbar, aber treibt mich im Formulardesigner zum Wahnsinn, weil die verschiedenen Controls dann übereinander liegen, alle mehr oder weniger sichtbar, und man sich überhaupt nicht auskennt.

Habt ihr Vorschläge, wie man das lösen könnte? Gibt es eine Möglichkeit, zur Design-Zeit Panels ein- und auszublenden? Ich habe schon daran gedacht, das Formular so gross zu machen, dass die Panels nebeneinander Platz haben, und erst zur Laufzeit die Formulargrösse und die Position der Panels so zu setzen, wie sie gehören, aber das ist auch eher mühsam, und vor allem bei jeder Änderung fehleranfällig.
Ich würde nur ein Panel verwenden. Dann einen

Delphi-Quellcode:

const maxPanels = 2; {your choice here}
type TmyPanels = record
                  ...
                  myCaptions : array[0..maxPanels-1] of string[128];
                  myActiveCaption : byte;
                  ...
                  end; {record}
var myPanels : TmyPanels;
const myPanelsSize = SizeOf(myPanels);

procedure TForm1.FormCreate(...
begin
...
with myPanels do begin
     myCaptions[0]:='...';
     ...
     myCaptions[maxPanels-1]:='...';
     myActiveCaption:=0;
     ...
     Panel1.Caption:=myCaptions[myActiveCaption];
end; {with}
...
end;
Schöne Grüße aus Nürnberg,
Manfred

Geändert von mz23 (14. Mär 2012 um 06:59 Uhr)
  Mit Zitat antworten Zitat