السلام عليكم
احاول صنع برنامج به
dlgOpen1
dlgSave1
button عدد 3
lbl عدد 2
عند ضغط اول زر يتفعل dlgOpen1 ونحدد الملف و lbl1 الكابشن يصبح اسم الملف
عند الضغط على ثاني زر يكتب اي شيء بلتيكست
عند الضغط على ثالث زر يتفعل dlgSave1 ويحفظ الملف lbl2 الكابشن يصبح saved
واجهت بعض المشاكل لقلة خبرتي بلدلفي
ارفقت مثال
ستجد في المرفقات ما تبحث عنه اضافة الى كيفية عمل Drag
السلام عليكم
ربما يساعدك المثال
PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
var
OpenDialog: TOpenDialog;
begin
OpenDialog := TOpenDialog.Create(Self);
OpenDialog.Filter := 'Text Files|*.txt';
if not OpenDialog.Execute then Exit;
Label1.Caption := OpenDialog.FileName;
MyText.LoadFromFile(OpenDialog.FileName);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
MyText.Text := 'Hello Delphi';
end;
procedure TForm1.Button3Click(Sender: TObject);
var
SaveDialog: TSaveDialog;
begin
SaveDialog := TSaveDialog.Create(Self);
SaveDialog.DefaultExt := 'txt';
if SaveDialog.Execute then
MyText.SaveToFile(SaveDialog.FileName);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
MyText := TStringList.Create;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
MyText.Free;
end;
لا تنسى تعريف في القسم private
PHP كود :
private
MyText: TStringList;
ان احتجت الى توضيح ...
ان كنت تستعمل نسخ دلفي الحديثة (Delphi>=2010) , فيستحسن أن تستخدم الكلاس [COLOR="Red"]TStreamReader بدل الكلاس
TStringList ..
مثال بسيط للاستعمال : [/COLOR]
PHP كود :
var
OpenDialog: TOpenDialog;
SR: TStreamReader;
Line: String;
begin
OpenDialog := TOpenDialog.Create(Self);
OpenDialog.Filter := 'Text Files|*.txt';
if not OpenDialog.Execute then
begin
OpenDialog.Free;
Exit;
end;
SR := TStreamReader.Create(OpenDialog.FileName);
while not(SR.EndOfStream) do
begin
Line := SR.ReadLine;
{ Process Line !! }
Memo1.Lines.Add(Line);
end;
SR.Free;
OpenDialog.Free;
end;