Thema: Delphi Komponenten Regions?

Einzelnen Beitrag anzeigen

Vjay

Registriert seit: 2. Dez 2003
Ort: Berlin/Eschede
481 Beiträge
 
Delphi 7 Professional
 
#3

Re: Komponenten Regions?

  Alt 14. Jun 2006, 09:44
Delphi-Quellcode:
 procedure modPanel( const PagePanel: TPanel);
 var
  Rgn: HRGN;
 begin
  Rgn:= CreateRoundRectRgn(0, 0, PagePanel.width, PagePanel.height, 9, 9);
  setWindowRgn(PagePanel.Handle, Rgn, true);
  deleteObject( Rgn);
 end;
Dashier gibt z.B. einem Panel runde Ecken, du modifizierst also nicht den Canvas, sondern das Fenster selber. Den rest solltest du über die Hilfe, bzw. über die Forensuche zu setWindowRgn herausbekommen.

Gruss


**EDIT**

Mir fällt noch eine Lösung ein:

Delphi-Quellcode:
constructor TDeinButton.Create(AOwner: TComponent);
begin
 inherited Create (AOwner);
 ControlStyle := ControlStyle - [csOpaque];
end;
DU überschreibst den Constructor und nimmst ihm den csOpaque Controlstyle. Nun wird wann immer der Button gezeichnet wird, das Fenster darunter zuerst gezeichnet. In der Paint/WM_PAINT malst du nun halt nur das was du willst.
Wer später bremst ist eher tot.
  Mit Zitat antworten Zitat