- •Часть 1
- •Implementation
- •Implementation
- •Implementation
- •Часть 1
- •Implementation
- •Implementation
- •Implementation
- •IBplementation
- •Implementation
- •Часть 1
- •Implementation
- •Implementation
- •Implementation
- •Implementation
- •Implementation
- •Interface
- •Часть 1
- •Interface
- •Часть 1 I. 104
- •Implementation
- •Implementation
- •Implementation
- •Часть I
- •Р ис. 1.46. Окно программы Звуки Windows
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Interface
- •Implementation
- •Implementation
- •Implementation
- •Implementation
- •Implementation
- •Interface
- •Часть 1
- •168 Част
- •Implementation
- •Часть 1
- •Interface uses
- •Implementation
- •Interface
- •Implementation
- •Часть 1
- •Часть 1 I Примеры и задачи
- •Часть 1 I Примеры и задачи
- •Implementation
- •205 Часть
- •Interface
- •Implementation
- •216 Часть 1
- •Поле т ип Размер Информация
- •Часть 1
- •Implementation
- •Interface
- •Implementation
- •Implementation
- •Часть 2 Таблица 2.2 (окончание)
- •252 Часть 2
- •Часть 2 I Delphi — краткий справочник
- •Часть 2
Implementation
{$R *.dfm}
// нажатие клавиши в поле редактирования
procedure TForml.EditlKeyPress(Sender: TObject; var Key: Char),
begin
if Key = #13 // клавиша <Enter>
then Buttonl.SetFocus; end;
140
Час
Примеры и задачи
141
//
щелчок на кнопке Открыть
procedure TForral.ButtonlClick(Sender: TObject);
var
f: TextFile; // файл
fName: String[80]; // имя файла
buf: String[80]; // буфер для чтения строк
begin
fName := Editl.Text; AssignFile(f, fName);
try
Reset(f); // открыть для чтения except
on EInOutError do begin
ShowMessage('Ошибка доступа к файлу '+
fName); exit; end; end;
// чтение из файла while not EOF(f) do begin
readlnff, buf); // прочитать строку из файла Memol.Lines.Add(buf); // добавить строку в поле Memol end;
CloseFile(f); // закрыть файл end;
// щелчок на кнопке Сохранить
procedure TForml.Button2Click(Sender: TObject);
var
f: TextFile; // файл
fName: String[80]; // имя файла
i: integer; begin
fName := Editl.Text;
AssignFile(f, fName);
try
Rewrite (f); // открыть для перезаписи
except
on EInOutError do begin
ShowMessage('Ошибка доступа к файлу '+ fName); exit; end; end;
// запись в файл
for i:=0 to Memol.Lines.Count do // строки в поле Memo
// пронумерованы с нуля writelnff, Memol.Lines[i]) ;
CloseFile (f) ; // закрыть файл
MessageDlg('Данные записаны в файл', mtlnformation,[mbOk], 0) ; end;
// щелчок на переключателе Только чтение procedure TForml.CheckBoxlClick(Sender: TObject); begin
if not CheckBoxl.Checked then begin
Memol.Readonly := False; // разрешить редактирование Button2.Visible := True // кнопка Сохранить доступна end else
begin
Memol.Readonly := True; // запретить редактирование Button2.Visible := False; // скрыть кнопку Сохранить end; end;
end.
51. Напишите программу, которая в поле Memo выводит содержимое текстового файла. Для получения от пользователя имени файла используйте стандартное диалоговое окно Открытие файла. Рекомендуемый вид диалогового окна приведен на рис. 1.52.
142
Час
Примеры и задачи
143
Implementation
{$R *.dfm)
// щелчок на кнопке Открыть
procedure TForml.ButtonlClick(Sender: TObject);
var
f: TextFile; // файл
fName: String[80]; // имя файла
buf: String[80]; // буфер для чтения строк
begin
if not OpenDialogl.Execute then { пользователь закрыл диалог ' щелчком на кнопке Отмена } exit;
// пользователь выбрал файл fName := OpenDialogl.FileName; Forml.Caption := fName; AssignFile(f, fName);
try
Reset(f); // открыть для чтения except
on EInOutError do
begin
ShowMessagel'Ошибка доступа к файлу '+
fName) ; exit; end; end;
// чтение из файла while not EOF(f) do begin
readln(f, buf); // прочитать строку из файла Memol.Lines.Add(buf); // добавить строку в поле Memol end;
CloseFile(f); // закрыть файл end;
procedure TForml.FormCreate(Sender: TObject); begin
// определим фильтр
OpenDialogl.Filter := 'Текст I *.txt'; end;
end.
52. Напишите профамму, которая добавляет в базу данных "Погода", реализованную в виде текстового файла, информацию о дневной температуре. Для ввода даты используйте компонент MonthCaiendar. Если файл данных отсутствует, то программа должна его создать. Рекомендуемый вид формы программы приведен на рис. 1.53.
