TOpenDialog және TsaveDialog компоненттері DIALOGS бетінде орналасқан. Бұл беттің барлық компоненттері көрінбейтін болып табылады, яғни программаның жұмысы кезінде көрінбейді. Сондықтан да оларды форманың кез келген ыңғайлы жеріне орналастыруға болады. Қарастырылатын екі компоненттің қасиеттері бірдей, тек қана сыртқы түрлері өзгеше. Компонентті шақырғаннан кейін программаның атын және оның жолын таңдауға болатын диалогты терезе пайда болады. FileName қасиетінде таңдалған файлдың аты және оның жолы жазылады. Файлдарды фильтрлеу үшін Filter қасиеті, ал файлдың кеңеймесін беру үшін DefaultExtқасиеті қолданылады. Егер диалогты терезенің атын өзгерту қажет болса, онда Title қасиеті қолданылады.
6.5. Тапсырманы орындау реті
Тапсырма: қабылдау емтихандарын тапсыратын абитуриенттердің ведомостін файлға жазатын немесе файлдан оқитын программа жазыңыз. Әрбір жазба фамилиядан, сонымен бірге физика, математика пәндері бойынша және шығармадан алған бағаларынан тұрады. Абитуриенттердің орташа балы кему ретімен сұрыпталған тізімін шығарыңыз және бұл ақпаратты текстілік файлға жазыңыз.
6.5.1.TOpenDialog және tSaveDialog компоненттерін күйге келтіру
TOpenDialog және TSaveDialog компоненттерін формаға орналастыру үшін Dialogs бетінен
немесе
пиктограммаларын тышқанмен шерту арқылы орналастырыңыз. Фильтрді қою келесі түрде орындалады. Сәйкес компонентті белгілеп, инспектор объектілері терезесінде Filter қасиетінде тышқанды екі рет шертіңіз. Сол жақ бөлігінде фильтрді сипаттайтын текст, ал оң жағында оның маскасы жазылатынFilterEditor терезесі пайда болады.OpenDialog1 үшін 6.1. суретте көрсетілгендей маска мәнін қоямыз. *.dat форматы кеңеймесі dat болатын барлық файлдардың көрінетіндігін, ал *.* форматы барлық файлдардың көрінетіндігін білдіреді.

6.1-Сурет
Файл автоматты түрде .dat кеңеймесімен жазылуы үшін DefaultExt қасиетінде қажет кеңеймені, яғни .dat кеңеймесін жазамыз. Осы жолмен текстілік файл үшін SaveDialog1 компонентін күйге келтіреміз(.txt кеңеймесі).
6.5.2. Программамен жұмыс
Программаны орындауға жіберуден кейін программаның диалогты терезесі шығады. «Ввести запись» батырмасы көрінбей тұрады. «Создать» батырмасына басу арқылы немесе бұрын құрылған файлды ашу үшін «Открыть» батырмасын басу арқылы

6.2-Сурет
жаңа файлды құру қажет. Содан соң ғана «Ввести запись» батырмасы көрінеді және жазбаны енгізуге болады. «Сортировка» батырмасын басқан кезде 6.2.-суреттегідей орташа балл кему ретімен сұрыпталады. «Сохранить» батырмасын басқанда сұрыпталған ведомосттен тұратын текстілік файл құрылады. «Close» немесе
батырмаларын басу программаны жабады.
Программа тексті:
Unit tema6;
Interface
Uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ExtCtrls;
Type
TForm1 = class(TForm)
Edit1:TEdit;
Edit2:TEdit;
Edit3:TEdit;
Edit4:TEdit;
Label1:TLabel;
Label2:TLabel;
Label3:TLabel;
Label4:TLabel;
Label5:TLabel;
Memo1:TMemo;
Button1:TButton;
Button3:TButton;
Splitter1:Tsplitter;
Button5:TButton;
BitBtn1:TBitBtn;
SaveDialog1:TSaveDialog;
Button2:TButton;
OpenDialog1:TOpenDialog;
Button4:TButton;
Procedure FormCreate(Sender:TObject);
Procedure Button1Click(Sender:TObject);
Procedure Button2Click(Sender:TObject);
Procedure Button3Click(Sender:TObject);
Procedure Button4Click(Sender:TObject);
Procedure Button5Click(Sender:TObject);
Procedure BitBtn1Click(Sender:TObject);
Procedure FormClose(Seder:TObject; varAction:TCloseAction);
Private
{private declarations}
Public
{public declarations}
End;
Type
TStudent=record
FIO:string[40]; //ф.и.о. өрісі
Otc:array[1..3] of word; //бағалар массиві өрісі
Sball:extended; //орташа балл өрісі
End;
Var
Fz:file of TStudent; //жазба типті файл
Ft:TextFile; //текстілік файл
Stud:array[1..100] of TStudent; //жазба массиві
Nzap:integer; //жазба нөмері
FileNameZ, FileNameT:string; //файлдың аты
Var
Form1:TForm1;
Implementation
{$R*.DFM}
Procedure TForm1.FormCreate(Sender:TObject);
Begin
Edit1.Text:=’’;
Edit2.Text:=’’;
Edit3.Text:=’’;
Edit4.Text:=’’;
Memo1.Clear;
Button1.Hide; //”Ввестизапись” батырмасын көрінбейтіндей ету
Nzap:=0;
End;
Procedure TForm1.Button1Click(Sender:TObject); //жаңажазбаныенгізу
Begin
Nzap:=nzap+1;
With stud[nzap] do begin
FIO:=Edit1.Text;
Otc[1]:=StrToInt(Edit2.Text);
Otc[2]:=StrToInt(Edit3.Text);
Otc[3]:=StrToInt(Edit4.Text);
Sball:=(otc[1]+otc[2]+otc[3])/3;
Memo1Lines.Add(fio+’ ‘+IntToStr(otc[1])+’ ‘+IntToStr(otc[2])+’ ‘+IntToStr(otc[3]));
End;
Write(fz,Stud[nzap]); //файлға жазу
Edit1.Text:=’’;
Edit2.Text:=’’;
Edit3.Text:=’’;
Edit4.Text:=’’;
End;
Procedure TForm1.Button2Click(Sender:TObject); //жазатын жаңа файл құру
Begin
OpenDialog1.Title:=’Создать новый файл’; //диалог терезесінің тақырыбын
Өзгерту
If OpenDialog1.Execute then //файлдың атын таңдауда стандартты диалогтің
орындалуы
Begin
FileNameZ:=OpenDialog1.FileName; //дискілік файлдың атын беру
AssignFile(Fz, FileNameZ); //Fz файлдық айнымалысын файл атымен
Байланыстыру
Rewrite(Fz); //жаңа файлды құру
End;
Button1.Show; //“Ввести запись” батырмасын көрінетіндей ету
End;
Procedure TForm1.Button3Click(Sender:TObject); //құрылған бар файлды ашу
Begin
If OpenDialog1.Execute then //файлдың атын таңдауда стандартты диалогтың
Орындалуы
Begin
FileNameZ:=OpenDialog1.FileName; //дискілік файлдың атын беру
AssignFile(Fz,FileNameZ); //Fz файлдық айнымалысын файл атымен
Байланыстыру
Reset(Fz); //құрылған файлды ашу
End;
While not eof(fz) do begin
Nzap:=nzap+1;
Read(fz,stud[nzap]); //файлдан жазбаларды оқу
With stud[nzap] do
Memo1.Lines.Add(fio+’ ‘+IntToStr(otc[1])+’ ‘+IntToStr(otc[2])+’ ‘+IntToStr(otc[3]));
End;
Button1.Show; //”Ввестизапись” батырмасын көрінетіндей ету
End;
Procedure TForm1.Button4Click(Sender:TObject); //жазбаны сұрыптау
VarI,j:word;
St:student;
Begin
For i:=1 to nzap-1 do //жазба массивін сұрыптау
For j:=i+1 to nzap do
If stud[i].sball<stud[j].sball then begin
St:=stud[i];
Stud[i]:=stud[j];
Stud[j]:=st; end;
Memo1.clear;
For i:=1 to nzap do //сұрыпталған жазбаны Memo1 терезесіне шығару
With stud [i] do
Memo1.Lines.Add(IntToStr(i)+’ ‘+fio+’ ‘+FloatToStrf(sball,fffixed,4,2));
End;
Procedure TForm1.Button5Click(Sender:TObject); //сұрыпталған нәтижені
//текстілік файлда сақтау
Var i:word;
Begin
If SaveDialog1Execute then //файлдың атын таңдауда стандартты диалогтың
орындалуы
begin
FileNameT:=SaveDialog1.FileName; //дискілік файлдың атын беру
AssignFile(Ft,FileNameT); //Ft файлдық айнымалысын файл атымен байланыстыру
Rewrite(Ft); //жаңа текстілік файлды ашу
End;
For i:=1 to nzap do
With stud[i] do writeln(Ft,i:4,’.’,fio.sball:8:2); //текстілік файлға жазу
CloseFile(Ft); //текстілік файлды жабу
End;
Procedure TForm1.BitBtn1Click(Sender:TObject);
Begin
CloseFile(fz); //“Close” батырмасын басу кезінде файлға жазуды жабу
End;
Procedure TForm1.FormClose(Sender:TObject; varAction:TCloseAction);
Begin
CloseFile(fz);
End;
End.

Нет комментариевНе стесняйтесь поделиться с нами вашим ценным мнением.
Текст