Einzelnen Beitrag anzeigen

Benutzerbild von Opa
Opa

Registriert seit: 12. Jun 2003
107 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: ListView Button Ereignisse

  Alt 2. Okt 2009, 13:00
Damit geht es!
Ich leite gerade eine Klasse von TlistView ab und habe auf (TDhListView = class(TCustomControl))
einen Header drauf, den ich mit scrollen muß. Hier das Erg. meiner Bemühungen. Damit andere daraus ggf. einen Nutzen haben.

Delphi-Quellcode:
procedure WMHScroll(var Msg: TWMHScroll); message WM_HSCROLL;
procedure LV_VHScroll(var Msg: TMessage);message WM_DH_LIESTVIEW;//= WM_USER + X
AHeaderControl : THeaderControl;

//constructor TListView.Create(AOwner: TComponent);
//begin
//AHandle := TWinControl(AOwner).Handle;

....
procedure TListView.WMHScroll(var Msg: TWMHScroll);
var
  SBH : integer;
begin
  inherited;
  SBH := GetScrollPos(Handle,SB_HORZ);
  SendMessage(AHandle,WM_DH_LIESTVIEW,SBH,integer(@Msg));
  Invalidate;
end;

///--------------------------------------------------------------
procedure TDhListView.LV_VHScroll(var Msg: TMessage);
var
  WMMsg : ^TMessage;
begin
  WMMsg := Pointer(Msg.LParam);
  case WMMsg.Msg of
    WM_HSCROLL : begin
                   AHeaderControl.Left := 2-Msg.WParam;
                   AHeaderControl.Width := AListView.Width + -2+Msg.WParam;
                 end;
  end;
end;
Wenn man nicht weiß was man sucht, findet man auch mit Google nichts.
Bevor ich hier eine Frage stelle, wurde Google vorher befragt. Hinweise dieser Art kann man sich schenken. Im übrigen muss mir niemand antworten.
  Mit Zitat antworten Zitat