Einzelnen Beitrag anzeigen

Zottel
(Gast)

n/a Beiträge
 
#1

Größe von TWinControl-Komponenten beschränkt?

  Alt 14. Mai 2004, 11:28
HalliHallo

Ich weiss nicht mehr weiter. Vielleich könnt ihr mir ja helfen.
Es ist eine Herrausforderung an 2 Stellen in meinen Programmen aufgetreten:
In einem Planer für die Terminierung von Mitarbeitern ist in der Übersicht ein TADVStringGrid von TMS mit einer höhe von 1320 eingebaut.
Das ganze ist in einer ScrollBox. Aber einer bestimmten Höhe (scheint screen.height zu sein), wird das Grid nicht mehr neu gezeichnet. es ist einfach ein weißes Feld zu sehen. Der fehler tritt auch bei einem anderen grid auf.
Auf die Screen.height bin ich gekommen, weil bei mir der fehler bei einer auflösung von 1600*1200 nicht auftritt, während er bei einer 1280*1024 auflösung doch schon störend ist.
Das gleiche Problem tritt an einer anderen Stelle auf:
Wenn ich ein Panel länger machen will, als die bildschirmbreite, lässt es sich nicht weiter aufziehen.
Setzen kann ich das panel auf eine breite , die größer ist, als die bildschirmbreite. wenn ich dann aber versuche, das Panel per Mausclick@Runtime weiter aufzuziehen, schnuppert es zurück, oder geht nicht weiter.....

das ist die routine, die ich in MouseDown des Panels eingebunden habe:

Delphi-Quellcode:
procedure TForm1.MasterPanelMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
Var SicherungTop:Integer;
begin
  SicherungTop:=(Sender as TADVPanel).top;
  ReleaseCapture;
  (Sender as TADVPanel).Cursor:=crSizeWE;
  //TWinControl(Sender).Perform(WM_SysCommand,$F012,0); //verschieben
  //TWinControl(Sender).Perform(WM_SysCommand,$F001,0); //linke seite verändern
  TWinControl(Sender).Perform(WM_SysCommand,$F002,0); //rechte verändern
  //TWinControl(Sender).Perform(WM_SysCommand,$F003,0); //obere seite verändern
  //TWinControl(Sender).Perform(WM_SysCommand,$F004,0); //links oben verändern
  //TWinControl(Sender).Perform(WM_SysCommand,$F005,0); //rechts oben verändern
  //TWinControl(Sender).Perform(WM_SysCommand,$F006,0); //untere seite verändern
  //TWinControl(Sender).Perform(WM_SysCommand,$F007,0); //links unten verändern
  //TWinControl(Sender).Perform(WM_SysCommand,$F008,0); //rechts unten verändern
  (Sender as TADVPanel).Cursor:=crDefault;
end;
Wie kann ich die beschränkung aufheben? Größere Flachbildschirme für höhere Auflösungen sind abgelehnt worden
wie gesagt, ich weiss nicht mehr weiter....

danke schonmal im vorraus

[edit=sakura] [delphi]tags Mfg, sakura[/edit]
  Mit Zitat antworten Zitat