Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Wie "alten Graphen" löschen bevor "neuer" gezeichn (https://www.delphipraxis.net/15444-wie-alten-graphen-loeschen-bevor-neuer-gezeichn.html)

Eloare 28. Jan 2004 22:02

Re: Wie "alten Graphen" löschen bevor "neuer&
 
Zitat:

Zitat von Eloare
Ich hab es auch mit versucht "form1.image1.canv..." und "image1.canv..." versucht, ändert allerdings auch nix.

tj0, daran lags nicht, trotzdem danke

mfg Eloare

Stanlay Hanks 28. Jan 2004 22:08

Re: Wie "alten Graphen" löschen bevor "neuer&
 
Hi. Entschuldige bitte, das hab ich übersehen :oops:
Ist der Code im vorletzten Post komplett? Weil wenn du sagst, dass das Image unter dem "normalen" ausgerichtet wird, hieße das ja, dass du nach dem "Draw(...)" noch irgendetwas stehen hast, das evt. drüberzeichnet.

Eloare 28. Jan 2004 22:18

Re: Wie "alten Graphen" löschen bevor "neuer&
 
Code:
procedure TForm1.BerechneButtonClick(Sender: TObject);
  var a,b:real;
      c,d,e,f,g,h,i,j:integer;
      Bitmap : TBitmap;

  begin
    Image1.Picture.LoadFromFile('C:\...\blanc.bmp');
    Image2.Picture.LoadFromFile('C:\...\erlaeuterung.bmp');
    a:=StrToInt(aedit.text);
    b:=StrToInt(bedit.text);
    c:=trunc((a*(-10))+433);
    d:=trunc(353);
    e:=trunc((a*10)+433);
    f:=trunc(353);
    drawFunc(a,b);
    gehe_nach(c,d);
    linie(e,f);
    g:=trunc(433);
    h:=trunc((b*10)+353);
    i:=trunc(433);
    j:=trunc((b*(-10))+353);
    gehe_nach(g,h);
    linie(i,j);
    if (a>b) then
      begin
      Bitmap := TBitmap.create;
      Bitmap.LoadFromFile('C:\...\Z.bmp');
      form1.Image1.canvas.draw(trunc(wurzel(quadrat(a)-quadrat(b)))+433,353,Bitmap);
      end
    else
      begin
      Bitmap := TBitmap.create;
      Bitmap.LoadFromFile('C:\...\Z.bmp');
      form1.Image1.canvas.draw(423,trunc(wurzel(quadrat(a)-quadrat(b)))+353,Bitmap);
      end;




  end;

end.
Das sind die allerletzten Zeilen, folglich dürfte eigentlich nix mehr "drübergemacht" werden.



mfg Eloare

Eloare 29. Jan 2004 19:03

Re: Wie "alten Graphen" löschen bevor "neuer&
 
also, ich füge die Bitmap damit ein:

Code:
if (a > b) then
      begin
      bitmap := TBitmap.create;
      bitmap.LoadFromFile('C:\...\Z.bmp');
      form1.Image1.canvas.draw(trunc(wurzel(quadrat(a)-quadrat(b)))
      +433-16,353-16,bitmap);
      end
    else
      begin
      bitmap := TBitmap.create;
      bitmap.LoadFromFile('C:\...\Z.bmp');
      form1.Image1.canvas.draw(433-16,353+trunc(wurzel(quadrat(a)
      -quadrat(b)))-16,bitmap);
      end;

wobei a und b von Eingaben abhängig sind.
Das komische daran ist jetzt: wenn a=b fügt er die Bitmap ein und ich sehe sie, wenn a>b fügt er die Bitmap entweder nicht ein, oder er legt sie "unter" ein anderes Image drunter.

Ist also vielleicht irgendwas an der if-Anweisung falsch?

Wenn a<b spinnt er ganz und sagt auch noch: Invalid floating point operation.
Das heißt doch das irgendwas mit den Gleitkommastellen nicht past, oder?



mfg Eloare

MisterNiceGuy 29. Jan 2004 19:06

Re: Wie "alten Graphen" löschen bevor "neuer&
 
Ich glaub das geht mit image1.canvas.handle := 0 oder nil ...
Habs aber nicht probiert :)

Eloare 29. Jan 2004 19:19

Re: Wie "alten Graphen" löschen bevor "neuer&
 
also mit image1.canvas.handle := 0; ändert sich gar nix,
und mit image1.canvas.handle := nil; sagt er beim compilieren:
"Incompatible Types: 'HDC' and 'Pointer'"


mfg Eloare

Edit: das mit "Invalid floating point operation" hat sich erledigt, lag an ner negativen Wurzel


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:19 Uhr.
Seite 2 von 2     12   

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