Announcement

Collapse
No announcement yet.

Canvas-Zeichenbereich festlegen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Canvas-Zeichenbereich festlegen

    Hallo,
    ich habe eine Routine, die Zeichenoperationen auf einem Canvas ausführt.
    Wie kann ich diejenigen zeichenoperationen unterbinden,
    die ausserhalb eines bestimmten Rechtecks stattfinden.
    Das ClipRect des Canvas ist ja leider eine nur-lesen-Property.
    Hat jemand eine Idee?

    Gruß, Alex

  • #2
    IntersectCliprect(), CreateRgn(), CreateRectRgn(), CreateRectRgnIndirect(), CombineRgn(), DeleteObject(), SelectClipRgn(), GetClipRgn() usw. usw

    Comment


    • #3
      Dankeschön, sieht brauchbar aus, aber wie rufe ich die unter delphi auf?

      HRGN CreateRectRgn(int nLeftRect, int nTopRect, int nRightRect, int nBottomRect );

      was für typen werden aus den c-typen?

      Ein mini-beispiel mit deklaration wär super

      Comment


      • #4
        <pre>

        uses Windows, Graphics; <br>

        procedure SetClipRect(Canvas: TCanvas; const Rect: TRect);
        var
        Rgn: hRgn;
        begin
        Rgn := CreateRectRgnIndirect(Rect);
        try
        SelectCipRgn(Canvas.Handle, Rgn);
        finally
        DeleteObject(Rgn);
        end;
        end;

        </pre&gt

        Comment

        Working...
        X