Einzelnen Beitrag anzeigen

Benutzerbild von Assun
Assun

Registriert seit: 3. Feb 2005
Ort: Hilzingen am Bodensee
469 Beiträge
 
Delphi 2005 Personal
 
#1

Bei druck auf "Druck" bild erstellen. Programm dre

  Alt 14. Apr 2005, 16:40
hi ! ich schreibe ein Programm, das regelmäßig überptüft, ob ein Bitmap in der Zwischenablage liegt und diese dann sofort als JPEG/GIF/PNG oder BMP speichert. ich benutze diese Methode : (es soll ein Bild gespeichert werden, sobald man auf "Druck" drückt.

Delphi-Quellcode:
procedure TMainfrm.Timer1Timer(Sender: TObject);
Var Bildname : String;
begin
Bildname := IntToStr(i);
// Dem Programm genügend Zeit lassen...
Timer1.Enabled := False;
// Nun folgen die If-Blöcke :

// Wenn ein Bitmap im ClipBoard liegt dann......
if Clipboard.HasFormat(CF_BITMAP) then begin
// ...erhöhe i um den Wert 1 und schreibe den Wert in eine Ini File
inc(i);
// Ini File wird geladen
with TIniFile.Create(ExtractFilePath(ParamStr(0)) + 'Settings/data.ini') do
   try
   WriteInteger('Bildanzahl','Anzahl',i);
   finally
   //Ini wird freigegeben
   Free;
if JPEGRadio.Checked = True then SaveAsJpeg(Bildname + '.jpg',TrackBar1.Position)
else if BMPRadio.Checked = True then SaveAsBmp (Bildname + '.bmp')
else if PNGRadio.Checked = True then SaveAsPNG (Bildname + '.png')
else if GIFRadio.Checked = True then SaveAsGif (Bildname + '.GIF')
end
end;
sleep(200);
ClipBoard.Free;
Timer1.Enabled := True;
end;
wenn ich diesen Code jedoch verwende, werden pro sekunde ca. 30 Bilder erzeugt !!! und mein PC stürzt, wie sich jeder denken kann dabei fast ab !

Was mache ich falsch ?

Gibt es vielleicht noch einen anderen Weg, dies zu lösen ?

vielen Dank,

Euer Assun
Sebastian Dietrich
http://Assun.de - bald komplett überarbeitet
  Mit Zitat antworten Zitat