احاول صنع برنامج به
dlgOpen1
dlgSave1
button عدد 3
lbl عدد 2
عند ضغط اول زر يتفعل dlgOpen1 ونحدد الملف و lbl1 الكابشن يصبح اسم الملف
عند الضغط على ثاني زر يكتب اي شيء بلتيكست
عند الضغط على ثالث زر يتفعل dlgSave1 ويحفظ الملف lbl2 الكابشن يصبح saved
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;