![]() |
AW: JPG im Blob Feld wird extrem groß
Ah, dann ergänz im gezeigten Code mal überall ClientDataset1 um den Präfix "Form1.", also so:
Delphi-Quellcode:
Form1.ClientDataset1
|
AW: JPG im Blob Feld wird extrem groß
ok jetzt kommt nur noch 1 fehler
[dcc32 Fehler] doku.pas(165): E2010 Inkompatible Typen: 'TDataSet' und 'class of TDataSet'
Delphi-Quellcode:
procedure tclientdatasetAfterScroll(DataSet1: TDataSet);
private { Private-Deklarationen } public { Public-Deklarationen } end; var Form2: TForm2; implementation {$R *.dfm} uses Unit1, ABOUT; procedure TForm2.TclientdatasetAfterScroll(DataSet1: TDataSet); var JpegImage: TJPEGImage; BlobStream: TStream; begin if (not Form1.clientdataset1.FieldByName('Arbeitsvertragimg').IsNull) then begin BlobStream := Form1.clientdataset1.CreateBlobStream(Form1.clientdataset1.FieldByName('Arbeitsvertragimg'),bmRead); JpegImage := TJPEGImage.Create; try JpegImage.LoadFromStream(BlobStream); Photo.Picture.Assign(JpegImage); Photo.Visible := True; finally JpegImage.Free; BlobStream.Free; end; end else Photo.Visible := False; end; procedure TForm2.btnLoadClick(Sender: TObject); var FileStream: TFileStream; BlobStream: TStream; begin if sdBlob.Execute then begin Form1.clientdataset1.Edit; BlobStream := nil; FileStream := TFileStream.Create(sdBlob.FileName,fmCreate); try BlobStream := Form1.clientdataset1.CreateBlobStream(Form1.clientdataset1.FieldByName('Arbeitsvertragimg'),bmRead); FileStream.CopyFrom(BlobStream,BlobStream.Size-BlobStream.Position); Form1.clientdataset1.Post; TclientdatasetAfterScroll(TDataSet); // fehler 2010 finally BlobStream.Free; FileStream.Free; end; end; end; |
AW: JPG im Blob Feld wird extrem groß
Und welche Zeile wäre das?
Delphi-Quellcode:
TclientdatasetAfterScroll(Form1.ClientDataSet1);
|
AW: JPG im Blob Feld wird extrem groß
das ist diese
Delphi-Quellcode:
TclientdatasetAfterScroll(TDataSet); //2010
|
AW: JPG im Blob Feld wird extrem groß
Delphi-Quellcode:
TclientdatasetAfterScroll(Form1.clientdataset1)
|
AW: JPG im Blob Feld wird extrem groß
Zitat:
Er will ein Event aufrufen? ... das liegt auf einer Form ... also muß man Dieses dort auch aufrufen. :angle: Also
Delphi-Quellcode:
,
ClientDataSet1AfterScroll(Form1.ClientDataSet1);
aber vermutlich eher so
Delphi-Quellcode:
, da das Event vermutlich auf der selben Form liegt, wie das DataSet. :gruebel:
Form1.ClientDataSet1AfterScroll(Form1.ClientDataSet1);
Oder notfalls auch indirekt über
Delphi-Quellcode:
.
Form1.ClientDataSet1.OnAfterScroll(Form1.ClientDataSet1);
[edit] siehe nachfolgenden Beitrag. Wie ich das sehe, benutzt diese Methode praktisch ausschließlich vorwiegend Komponenten/Funktionen der Form1, also gehört diese Methode auch in TForm1 rein, wo sie dann von Form2 aus aufgerufen wird, mit Übergabe das Dateinamen als Parameter. So oft, wie hier die böse globale Variable
Delphi-Quellcode:
benutzt werden musste. Immer wenn man solche globalen Variablen verwenden muß, vorallem bei der Masse, sollte man dringend nachsehn, was man hier falsch macht.
Form1
Allgemein würde ich aber dringend das Studium eines Grundlagen-Tutorials empfehlen. > Typen <> Objektinstanzen und Variablen, sowie Parameter ... was ist das und wie benutzt man es > und wie benennt man Komponenten/Funktionen (sprechende Bezeichner) |
AW: JPG im Blob Feld wird extrem groß
Glaub doch.
Zitat:
|
AW: JPG im Blob Feld wird extrem groß
Ohh. OK, dann ist die Benennung doch echt böse.
Hab meine letzte Antwort versucht entsprechend anzupassen. :oops: |
AW: JPG im Blob Feld wird extrem groß
so es sind keine fehler mehr und es lässt sich compilieren nur leider passiert nichts.
fehler meldung im programm die syntax für denn dateiname verzeichnissname oder datenträgerbezeichnung ist falsch?:( |
AW: JPG im Blob Feld wird extrem groß
Und wie sieht dieser aus?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz