Einzelnen Beitrag anzeigen

Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Subclassing der WndProc des übergeordneten Controls

  Alt 18. Jul 2003, 12:03
Zitat von negaH:
In deinem Fall musst dann wohl oder übel das fensterhandle mit SetWindowLong() subclassen.
Genau das mach ich ja:
Delphi-Quellcode:
var
  OldParentWndProc: Pointer;

function NewParentWndProc(hWnd: HWND; uMsg: UINT; wParam: wParam; lParam: lParam):
  lResult; stdcall;
begin
  Result := 0;
  case uMsg of
    WM_CTLCOLORSTATIC:
      begin
        SetBkColor(HDC(wParam), RGB(255, 255, 255));
        Result := RGB(255, 255, 255);
      end;
  else
    CallWindowProc(OldParentWndProc, hWnd, uMsg, wParam, lParam);
  end;
end;

//Subclassing durchführen
OldParentWndProc := Pointer(SetWindowLong(hWndParent, GWL_WNDPROC,
    Integer(@NewParentWndProc)));
Und wenn ich das so mache, reagiert das Fenster nicht mehr.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat