Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - TSrcollBar.enable := false; geht nicht


Knulli - Mo 12.10.15 12:47
Titel: TSrcollBar.enable := false; geht nicht
Hi Leute,

ich will eine Scrollbar im Code disablen.


Delphi-Quelltext
1:
SrcollBar1.Enable := false;                    


Die Eigenschaft ändert sich zwar, jedoch nicht das aussehen (wird nicht grau).

Erst wenn ich versuche zu scrollen, disabled sich das Ding.

Gibts dafür ein Workaround (D2007)?


Delete - Mo 12.10.15 13:04

Beispiele für Form1 und Memo1:


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:
24:
25:
procedure TForm1.Button1Click(Sender: TObject);
begin
Form1.HorzScrollBar.Range := 10000;
Form1.VertScrollBar.Range := 10000;
EnableScrollBar(Form1.Handle, SB_BOTH, ESB_DISABLE_RTDN or ESB_DISABLE_LTUP);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
EnableScrollBar(Memo1.Handle, SB_BOTH, ESB_DISABLE_RTDN or ESB_DISABLE_LTUP);
end;

//Ausblenden - einzeln oder beide
procedure TForm1.Button3Click(Sender: TObject);
begin
ShowScrollBar(Memo1.Handle,SB_HORZ,False);
ShowScrollBar(Memo1.Handle,SB_VERT,False);
end;

//Einblenden - einzeln oder beide
procedure TForm1.Button4Click(Sender: TObject);
begin
ShowScrollBar(Memo1.Handle,SB_HORZ,TRUE);
ShowScrollBar(Memo1.Handle,SB_VERT,TRUE);
end;