Einzelnen Beitrag anzeigen

janjan

Registriert seit: 16. Jan 2003
Ort: Bonn ("links über Königswinter ")
240 Beiträge
 
Delphi 4 Standard
 
#6
  Alt 27. Feb 2003, 15:35
Mit der Fehlermeldung "Canvas/Leinwand erlaubt kein zeichnen" hab ich vor kurzem auch Bekanntschaft gemacht. Bei mir lag es daran, dass zwei Routinen gleichzeitig auf ein Canvas gemalt haben. Um sicher zu gehen das du malen darfst, solltest du sowas hier benutzen:

Delphi-Quellcode:
with Canvas do
  if lockcount=0 then
    begin
      Lock;
      Brush.Color:=clLime;
      Canvas.Ellipse(10,20,20,40);
      Unlock;
    end; // lockcount = 0
wenn Lockcount <> 0 ist, dann führt ein zeichnen auf diesem Canvas zu einem Fehler, bei 0 kann man gefahrlos rummalen. Mit Lock und Unlock kannste der/die/das Canvas für dich reservieren und freigeben. Dabei sollte man immer an das freigeben denken, ansonsten gibts Probleme.
Die Wichtigkeit eines Postings im Forum ist reziprok zur Anzahl der enthaltenenen, kumulierten Ausrufungszeichen!!!
  Mit Zitat antworten Zitat