AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mit Canvas gezeichnete Objekte verschwinden

Ein Thema von tgoessi · begonnen am 16. Jun 2005 · letzter Beitrag vom 16. Jun 2005
Antwort Antwort
tgoessi

Registriert seit: 31. Mai 2005
34 Beiträge
 
Delphi 5 Enterprise
 
#1

Mit Canvas gezeichnete Objekte verschwinden

  Alt 16. Jun 2005, 17:42
Hallo

Wenn ich mit der Funktion Canvas etwas zeichne, z.B.
in einem Formular:

Delphi-Quellcode:
  Canvas.Brush.Color := clLime;
  Canvas.Pen.Color := clBlack;
  Canvas.Pen.Style := psSolid;
  Canvas.Pen.Width := 1;
  Canvas.Chord(0,0,100,100,10,40,90,40);
wird die Grafik zwar gezeichnet.
Wenn aber das Fenster von einem anderen zugedeckt, dann wieder neu aktiviert wird, erscheint die Grafik nicht mehr.
Müssen solche grafiken bei jedem OnRepain bzw. OnFocus wieder neu erstellt werden?

Gruss
Tom
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Mit Canvas gezeichnete Objekte verschwinden

  Alt 16. Jun 2005, 17:44
Canvas ist keine Funktion, sondern eine Eigenschaft - in diesem Fall von deinem Formular.

http://www.luckie-online.de/develope...tioniert.shtml
(Am Ende ist ein Beispiel, wie man so was normalerweise löst.)
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#3

Re: Mit Canvas gezeichnete Objekte verschwinden

  Alt 16. Jun 2005, 17:45
Hallo Tom,

Zitat von tgoessi:
Wenn aber das Fenster von einem anderen zugedeckt, dann wieder neu aktiviert wird, erscheint die Grafik nicht mehr.
Müssen solche grafiken bei jedem OnRepain bzw. OnFocus wieder neu erstellt werden?
genau so ist es. Wenn du die Delphi-Referenz durchsuchenTPaintBox verwendest, wird das OnPaint-Ereignis gefeuert. Diese Komponente ist genau fuer diesen Zweck geschrieben worden, notfalls kann man aber auch auf dem Canvas des Forms zeichnen.
Weiters empfiehlt es sich in solchen Fallen, einmal auf ein Offscreen-Bitmap zu zeichnen, und dieses anschliessend auf den Canvas der PaintBox oder des Forms rueberzukopieren. So sparst du dir das andauernde manuelle Zeichnen des Inhalts.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz