Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Bei Paint keinen Rahmen zur Laufzeit


galagher - Fr 22.10.04 19:24
Titel: Bei Paint keinen Rahmen zur Laufzeit
Hallo!

Ich bastle gerade an einer Komponente TEnhancedCtrl, mit der man diverse Komponenten oder Formulare verändern kann. Dabei soll man sie zur Entwufszeit natürlich sehen:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TEnhancedCtrl.Paint;
begin
 inherited Paint;

 Canvas.Brush.Color := Color;
 Canvas.Pen.Color := clBlack;
 with Canvas do
 begin
  Pen.Style := psDash;
  Brush.Style := bsClear;
  Rectangle(00, Width, Height);
 end;
end;

Ein Rahmen also. Wie mache ich den Rahmen zur Laufzeit nun weg - TEnhancedCtrl soll dann unsichtbar sein!
Danke im Voraus!!!


smiegel - Fr 22.10.04 20:46

Hallo,

ich hoffe, ich habe Deine Frage richtig verstanden.

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
  ...
  with Canvas do
  begin
    ...
    if (csDesigning in ComponentState) then Rectangle(00, Width, Height)
      else FillRect(ClipRect));
  end;
  ...


galagher - Fr 22.10.04 21:16

smiegel hat folgendes geschrieben:
ich hoffe, ich habe Deine Frage richtig verstanden.

Ja, danke, das ist es, was ich brauche! :D

Aber eine Frage hab' ich noch - wie kann man die Property's entfernen? Konkret: ich möchte, dass die Komponente kein "Cursor" und kein "Hint" mehr hat. Praktisch das Gegenteil von property. Danke!