Announcement

Collapse
No announcement yet.

Canvas Bug?

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

  • Canvas Bug?

    Hallo,

    ich versuche auf einem Panel, welches sich auf einer Scrollbox befindet, mittels Canvas.FillRect() zu zeichnen. Das Panel ist größer als die Bildschirmauflösung (z.B. Panel.Width = 1600, Panel.Height = 1200, Bildschirmauflösung 800x600). Durch die Scrollbox bin ich in der Lage jeden Bereich des Panels anzuzeigen.
    Leider wird unter NT und Win2k nur in den Bereichen des Panels gezeichnet, deren Koordinaten kleiner als die aktuelle Bildschirmauflösung sind, d.h. ab Width = 800 zeichnet Canvas.FillRect nicht mehr.
    Unter Win98 funktioniert das Zeichnen hingegen normal.

    Kennt jemand eine Möglichkeit dieses Problem zu beseitigen?

    Gruß

    Andreas

  • #2
    Ja solche Probleme sind bekannt und sind dem Grafikkarten-treiber zuzuschreiben. Versuch mal mit SelectClipRgn(Canvas.Handle, 0) oder Canvas.ClipRect := ClientRect; zu arbeiten.

    Gruß Hage

    Comment


    • #3
      Hallo Hagen,

      Canvas.ClipRect ist ReadOnly, aber SelectClipRgn behebt das Problem.

      Danke!!

      Comment

      Working...
      X