Ben image nesnesine yüklediğim resim yolunu istediğim klasöre nasıl kaydettirebilirim.
Kod: Tümünü seç
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Menus, Vcl.StdCtrls, Vcl.Buttons,
Data.DB, Data.Win.ADODB, Vcl.ExtCtrls, Vcl.Mask, Vcl.DBCtrls, Vcl.Grids,
Vcl.DBGrids;
type
TForm1 = class(TForm)
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
OpenDialog1: TOpenDialog;
PopupMenu1: TPopupMenu;
ResimA1: TMenuItem;
ResimKaydte1: TMenuItem;
ResimSil1: TMenuItem;
eAra: TEdit;
DBGrid1: TDBGrid;
Panel1: TPanel;
Image1: TImage;
BitBtn1: TBitBtn;
procedure ResimA1Click(Sender: TObject);
procedure ResimKaydte1Click(Sender: TObject);
procedure ResimSil1Click(Sender: TObject);
procedure eAraChange(Sender: TObject);
procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
procedure DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure ADOQuery1AfterScroll(DataSet: TDataSet);
procedure BitBtn1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.ADOQuery1AfterScroll(DataSet: TDataSet);
begin
image1.Picture.LoadFromFile(adoquery1.fieldByName('resim').AsString);
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
adoquery1.Edit;
end;
procedure TForm1.DBGrid1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
// image1.Picture.LoadFromFile(adoquery1.fieldByName('resim').AsString);
end;
procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
(* if Key = Char(VK_RETURN) then
begin
adoquery1.Next;
image1.Picture.LoadFromFile(adoquery1.fieldByName('resim').AsString);
end; *)
end;
procedure TForm1.eAraChange(Sender: TObject);
begin
adoquery1.Close;
adoquery1.SQL.Clear;
adoquery1.SQL.Add('Select * from resim_deneme');
adoquery1.SQL.Add('where adi like '''+eAra.Text+'%'' order By adi');
adoquery1.Open;
image1.Picture.LoadFromFile(adoquery1.fieldByName('resim').AsString);//veritabanında kayıtlı yoldaki resmi image1 nesnesine aktar.
end;
procedure TForm1.ResimA1Click(Sender: TObject);
begin
if opendialog1.Execute then // eğer opendialog1 aktif ise
begin
image1.Picture.LoadFromFile(opendialog1.FileName); //opendialog1 deki resmi image nesnesine aktar
end;
end;
procedure TForm1.ResimKaydte1Click(Sender: TObject);
begin
adoQuery1.Edit;
adoQuery1.FieldByName('resim').AsString:= opendialog1.FileName;//veritabanındaki RESIM alanına opendialog1 deki yolun ismini yaz.
adoQuery1.Post;
end;
procedure TForm1.ResimSil1Click(Sender: TObject);
begin
adoquery1.Edit;
adoquery1.FieldByName('resim').AsString:='';
adoquery1.Post;
image1.Picture.LoadFromFile(adoquery1.fieldByName('resim').AsString);//image nesnesini güncelledik.
end;
end.