Autor Beitrag
knightkiller
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 35

WinXP SP2
D7 Pers, D2005 Pers
BeitragVerfasst: Do 18.11.04 12:38 
Hallo zusammen,
Ich arbeite an einer Ableitung von einem DBCtrlGrid. In meinem abgeleiteten CtrlGrid sollte es möglich sein, die Scrollbar ein- oder auszublenden. Das ein- und ausblenden funktioniert prima, das Problem ist, dass der Hintergrund hinter der Scrollbar sichtbar wird.

user defined image
Das linke Bild mit und das rechte ohne Scrollbar. Beide sind Komponenten sind maximiert (alClient)

Set-Routine des neuen "ScrollbarVisible"-Properties:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure TMyDBCtrlGrid.SetScrollbarVisible(const Value: Boolean);
begin
  if FScrollbarVisible <> Value then begin
    FScrollbarVisible := Value;
    if Orientation = goVertical then
      ShowScrollBar(Handle,SB_VERT,Value)
    else
      ShowScrollBar(Handle,SB_HORZ,Value);
  end;
end;


Wäre dankbar, wenn mir da jemand helfen könnte

gruss
Roman Ganz

Moderiert von user profile iconUGrohne: Code- durch Delphi-Tags ersetzt.
IngoD7
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 629


D7
BeitragVerfasst: Do 18.11.04 12:43 
Schnellschuss: Was ist mit Neuzeichnen (Repaint oder Update oder dergleichen)?
knightkiller Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 35

WinXP SP2
D7 Pers, D2005 Pers
BeitragVerfasst: Do 18.11.04 12:50 
So einfach ist es leider nicht ;) hab ich schon ausprobiert... selbst nach dem Verschieben oder nach dem Verändern der Grösse bleibt der "Hintergrundbalken" erhalten... :?
greg
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 119

Windows2000, WindowsXP
D5 Prof
BeitragVerfasst: Do 18.11.04 13:14 
Hallo Rittertöter,

bei DBCtrlGrid gibt es eine Eigenschaft ControlStyle und dort wiederum 'csFixedWidth' guck doch da mal nach.
Ansonsten würde ich mal versuchen die Breite des Controls zu lesen, die Scrollbars abzuschalten und die alte Breite auf das Control zurückschreiben.

Gruß
Gregor
knightkiller Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 35

WinXP SP2
D7 Pers, D2005 Pers
BeitragVerfasst: Di 23.11.04 09:45 
nö bringt auch nix, hab jetzt mittlerweilen alle möglichen und unmöglichen kombinationen ausprobiert...