Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5
  Alt 13. Jun 2003, 18:35
So kannst du beispielsweise die Fenstercaption zentrieren:
Delphi-Quellcode:
type
  TForm1 = class(TForm)
  private
    { Private-Deklarationen }
    procedure WMNCPAINT(var Msg: TMessage); Message WM_NCPAINT;
WM_NCHITTEST;
  public
    { Public-Deklarationen }
  end;

procedure TForm1.WMNCPAINT(var msg: TMessage);
var
  rect: TRect;
  dc: HDC;
  szBuffer: array[0..255] of Char;
begin
  Inherited;
  if Msg.Msg = WM_NCPAINT then
  begin
    dc := GetWindowDC(Handle);
    rect.Left := GetSystemmetrics(SM_CXEDGE);
    rect.Top := GetSystemmetrics(SM_CXSIZEFRAME);
    rect.Right := Form1.Width-GetSystemmetrics(SM_CYEDGE);
    rect.Bottom := Getsystemmetrics(SM_CYCAPTION)+GetSystemmetrics(SM_CXSIZEFRAME);
    lstrcpy(szBuffer, 'Meine Fenstercaption');
    SetBkMode(dc, TRANSPARENT);
    SetTextColor(dc, RGB(255,255,255));
    DrawText(dc, szBuffer, lstrlen(szBuffer), rect, DT_CENTER or DT_VCENTER);
    ReleaseDC(Handle, dc);
  end;
  ReleaseDc(Handle, dc);
end;
Das mit dem Malen kann dir Daniel B erklären. Da kann er mal zeigen, ob er es verstanden hat - der kleine Maler dieser.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat