Autor Beitrag
LokutusvB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 74

WinXP
Delphi 5, Delphi XE
BeitragVerfasst: Fr 04.03.11 15:07 
Hallo,

ich nutze in einem Formular eine TScrollbox. In dieser befinden sich mehrere TPanels und auf den Panels wiederum mehrere TEdit-Felder. Das Scrollen der Box mittels Mausrad realisiere ich über die beiden Eigenschaften OunMouseWheelDown und ...Up
ausblenden Delphi-Quelltext
1:
with (Sender as TScrollBox).VertScrollBar do Position := Position + 10;					

Ja nach Aufruf des Formulares möchte ich die Edit-Felder ReadOnly setzen oder auch nicht. Da es sich um einige Panles und Felder handelt, wollte ich das einfach mittels Schleife organisieren:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
for ii := 0 to sbFormular.ControlCount -1 do begin
  if (sbFormular.Controls[ii].ClassType = TPanel)
    then sbFormular.Controls[ii].Enabled := False;
  if (sbFormular.Controls[ii].ClassType = TGroupBox)
    then sbFormular.Controls[ii].Enabled := False;
end;

Hier habe ich allerdings das Problem, daß sich die Scrollbox nicht mehr mit dem Mausrad scrollen lässt. Leider konnte ich keine Möglichkeit finden, die Edit-Felder auf ReadOnly zu setzen, das scheint über Controls nicht möglich zu sein. Kennt jemand eine Möglichkeit, mittels dieser Controls-Schleife die Edit-Felder auf ReadOnly zu setzen? So müßte ich nicht die Panles und Boxen deaktivieren und das Scrollen mittels Mausrad würde weiterhin funtkionieren.
zuma
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 660
Erhaltene Danke: 21

Win XP, Win7, Win 8
D7 Enterprise, Delphi XE, Interbase (5 - XE)
BeitragVerfasst: Fr 04.03.11 15:13 
ich mach das immer so, das ich die Components durchlaufe, die auf der Form sind und dann schalte:

ausblenden Delphi-Quelltext
1:
2:
if xForm.Components[i] is TEdit then
  TEdit(xMaske.Components[i]).ReadOnly := xBool;

_________________
Ich habe nichts gegen Fremde. Aber diese Fremden sind nicht von hier! (Methusalix)
Warum sich Sorgen ums Leben machen? Keiner überlebts!
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19346
Erhaltene Danke: 1754

W11 x64 (Chrome, Edge)
Delphi 12 Pro, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: Fr 04.03.11 15:23 
Ja, der Punkt ist einfach nur der Typecast auf TEdit. Ansonsten ist Controls hier natürlich richtig.
LokutusvB Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 74

WinXP
Delphi 5, Delphi XE
BeitragVerfasst: Fr 04.03.11 15:26 
Danke euch beiden, funktioniert bestens! :)

Bin mal wieder nicht auf einen Cast gekommen.