Autor Beitrag
Disconnect
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Fr 26.03.10 18:51 
Hallo Com,

hab gerade anggefangen mit Delphi und lerne es immoment seit einem halbem Jahr im Fach Informatik. Wir sollten in diesem Programm unser eigenes Paintprogramm realisieren.Die Grundlegenden Dinge hab ich bereits geschaftt. Danach habe ich selbst noch ein paar Extras wie z.b. Speichern,den Exit Button und die Funktion seine Zeichung zu löschen eingefügt. Deshalb sind diese Programm teile auch einfach durch ausprobieren bzw durch logisches denken von mir gemacht worden, deshalb sind sie wahrscheinlich ziemlich primitiv programmiert. Nun komme ich allerdings nicht weiter ich möchte noch das es möglich ist ein vorher gezeichnetes bild zu laden , zudem während das Programm läuft einen Floodfill durch einen klick auf die Linke Maustaste machen.

Vielen dank schon mal für die Zeit und Hilfe :-)

Moderiert von user profile iconNarses: Binaries aus dem Archiv entfernt.
Einloggen, um Attachments anzusehen!
IceBube
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 231



BeitragVerfasst: Fr 26.03.10 22:12 
Hallo!

Ich habs mir kurz angeschaut...

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
...Timer()...
gauge1.progress:=gauge1.progress+1;
if gauge1.progress= 100 then
form1.Imbild.Picture.SaveToFile(Edit1.Text);
...

^So dauert das speichern ja viel länger :/

Das laden der Bilder ist leicht gemacht einfach nur:

ausblenden Delphi-Quelltext
1:
Form1.ImBild.Picture.LoadFromFile(Dateiname)					

Nimm einen "OpenPictureDialog" schreibe im Event "CanClose"

ausblenden Delphi-Quelltext
1:
ImBild.Picture.LoadFromFile(DateiName)					


Zum ausführen von dem Dialog "OpenPictureDialog.Execute"

Noch ein Tipp:
Um die gesamte Bildfläche zu löschen =>

ausblenden Delphi-Quelltext
1:
ImBild.Picture := Nil;					


lg

P.s: Das mit "Floodfill" weiß ich selbst nicht ganz genau^
Disconnect Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Sa 27.03.10 14:40 
Danke , erstmal für die Hilfe :-)
das mit dem Gauge war nur Fun ich weiß das es natürlich nix bringt :D
Ich hab es jetzt hingekriegt das ich mit picture.loadfrom...meine alten Bilder laden kann.
Das reicht mir auch erstmal nur den floodfill bekomme ich noch nicht hin.

aber danke für die tolle antwort nochmal hat echt geholfen.
Narses
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10183
Erhaltene Danke: 1256

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Sa 27.03.10 20:40 
Moin und :welcome: im Forum!

user profile iconDisconnect hat folgendes geschrieben Zum zitierten Posting springen:
Das reicht mir auch erstmal nur den floodfill bekomme ich noch nicht hin.
Ist doch kein Problem, TCanvas hat doch eine entsprechende Methode: :idea: ;)
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TForm1.FormCreate(Sender: TObject);
begin
  Randomize;
  Image1.Picture.Bitmap.Width := Image1.Width;
  Image1.Picture.Bitmap.Height := Image1.Height;
  Image1.Picture.Bitmap.Canvas.Ellipse(Image1.Picture.Bitmap.Canvas.ClipRect);
end;

procedure TForm1.Image1Click(Sender: TObject);
begin
  Image1.Picture.Bitmap.Canvas.Brush.Color := Random($FFFFFF)+1;
  Image1.Picture.Bitmap.Canvas.FloodFill(Image1.Width div 2,Image1.Height div 2,clBlack,fsBorder);
end;
cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.