Autor Beitrag
rizla
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 417
Erhaltene Danke: 2

XP
FPC mit Lazarus
BeitragVerfasst: Mi 13.01.10 17:47 
Hoi!

Ich hab da mal 'ne Frage:
ich benutze für ne graphische Ausgabe ein TImage (es ist kein FPShooter, daher reicht das.), nun
ist es aber nötig, dass ich den Inhalt lösche. Es quasi in den Urzustand versetze, in dem es ja bekanntermaßen
transparent ist (resp. leer resp. gar nicht vorhanden - nachdem ich es der Form platziert habe also).
Das darunterliegende (in dem Fall auch ein Bild, soll zu sehen sein, daher die geforderte Transparenz).

Habe schon einiges vesucht, z.B.

ausblenden Quelltext
1:
Image1.Picture.Bitmap := nil					


oder über
ausblenden Quelltext
1:
.brush := bsnone;					
und floodfill;

oder per setzen der größe auf 0 und dann zurück auf die benötigte größe.

Aber es klappt alles nicht.

Ich male, um es anzumkerken, nicht (auf) dem ganze bild, sondern nur an bestimmten stellen des bildes etwas.
Und dieses gemalte muss halt wieder weg.
Also quasi, als wenn ich auf einer Transparenzfolie etwas schreiben würde und dieses dann wieder wegwische.
(Ich glaube, dieser Vergleich ist der treffenste).

Beste Grüße


:r:

_________________
if you have what they want - they'll find a way to take it (bruce sterling)
WOW - 10 JAHRE Mitglied beim Delphi-Forum. Wie die Zeit vergeht, Freunde.
ffgorcky
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 573

WIN XP/2000 & 7Prof (Familie:Win95,Win98)

BeitragVerfasst: Mi 13.01.10 18:41 
Gucke Dir einfach mal dieses Thema an:
Delphi-Forum.de » Sonstiges (Delphi) » TImage
Da steht - wenn ich das richtig sehe - genau das als Abfrage beschrieben:
Picture.Graphic=nil
- oder ist Dein Problem nicht das gleiche?
rizla Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 417
Erhaltene Danke: 2

XP
FPC mit Lazarus
BeitragVerfasst: Mi 13.01.10 19:08 
Joa, funktioniert,
aber nur, weil ich dieses danach noch tue:

ausblenden Quelltext
1:
2:
3:
4:
  with Image1.Picture.Bitmap do begin
   Width:=354;
   Height:=354;
 end;


Aber ist das sauber programmiert? Hmm. egal, es funktioniert!

Danke

_________________
if you have what they want - they'll find a way to take it (bruce sterling)
WOW - 10 JAHRE Mitglied beim Delphi-Forum. Wie die Zeit vergeht, Freunde.
FinnO
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1331
Erhaltene Danke: 123

Mac OSX, Arch
TypeScript (Webstorm), Kotlin, Clojure (IDEA), Golang (VSCode)
BeitragVerfasst: Mi 13.01.10 21:02 
image1.Canvas.Fillrect(ClientRect);

es empfiehlt sich, vorher die Farbe weiß zu setzen.