![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Сохраните работу и запустите проект на выполнение.Содержание книги
Поиск на нашем сайте
Убедитесь в правильности работы закладок, комбинированного списка, наличия возможности редактировать поля таблицы и перемещаться по ним с помощью полосы прокручивания. Вызовите окно «О программе» и закройте его клавишей Ok. Закончите работу командой Файл => Выход.
17. Опишите глобальные переменные и типы данных программы: тип записи телефонного справочника (info), файл записей (F), переменную типа info (г) и целую переменную количества записей (N). Для этого перед разделом реализации implementation добавьте такие команды: Type info=record //Тип записи familia,imja:string[20]; adres:string[100]; tel:string[15]; end; var PagesDlg: TPagesDlg; //Эта строка уже есть в заготовке модуля f:file of info; //Файл записей r:info; //Одна запись n:integer; //Количество записей
Кнопки (OpenDialog) и (SaveDialog) находятся на закладке Dialogs панели компонентов Delphi. На рис. 1 эти объекты расположены в правом верхнем углу формы. Запрограммируйте процедуры открытия и сохранения файлов телефонного справочника (команды главного меню «Прочитать из файла» и «Записать в файл»). //Прочитать из файла procedure TPagesDlg.N2Click(Sender: TObject); {Здесь N2 – номер команды «Прочитать из файла», у вас может быть другой} begin {Выполнение стандартного диалога для открытия файла. Читаем с начала файла Считываем все записи из файла и переносим их в StringGrid Используем переменную целого типа для подсчета количества записей в файле (номера записи) и соответственно номера столбца в таблице} //Фамилия - в первый столбец таблицы //Имя - во второй столбец таблицы //Адрес - в третий столбец таблицы // Телефон - в четвертый столбец таблицы //Закрываем файл //Описанная ниже процедура заполняет поля редактирования //первой страницы формы - "Редактирование и поиск записей" NewEdit(ComboBox1); //Описанная ниже процедура заполняет комбинированный список //первой страницы формы - "Редактирование и поиск записей" NewComboBox; end;
//Записать в файл procedure TPagesDlg.N3Click(Sender: TObject); var i:integer; begin {Выполнение стандартного диалога для сохранения файла. Записываем из таблицы StringGrid данные в типизированный файлс начала файла. Подсказка: для окончания цикла по записи можно использовать следующую структуру
while StringGrid1.Cells[3,i]<>'' do операторы; т.к.третий столбец в таблице последний Закрытие файла.} end; Напишите процедуру создания формы. В окне инспектора объектов активизируйте объект PagesDlg (окно формы с многостраничным блокнотом) и дважды щелкните в строке OnCreate (Момент Создания) закладки Events этого объекта. Сформируйте процедуру создания главной формы программы:
procedure TPagesDlg.FormCreate(Sender: TObject); begin // Заполняем заголовок таблицы //В ячейку с координатами (0, 0) – 'Фамилия'; //В ячейку с координатами (0, 1) – 'Имя'; //В ячейку с координатами (0, 2) – 'Адрес'; //В ячейку с координатами (0, 3) – 'Телефон'; //Создаем пустую строку в комбинированном списке ComboBox1.Items.Add(''); //Активизируем эту строку на случай создания нового справочника ComboBox1.ItemIndex:=0; end;
Напишите процедуру заполнения полей редактирования NewEdit. Вызов этой процедуры осуществляется, в частности, в момент выбора фамилии для поиска, то есть в момент смены активной строки в комбинированном списке. Поэтому для инициализации заготовки этой процедуры активизируйте на закладке Events окна Object Inspector объекта ComboBox1 строку OnChange (Момент Замены) и в правом столбце укажите название процедуры реакции на это событие: NewEdit. Дважды щелкните мышью на введенном названии и заполните заготовку этой процедуры следующим образом:
procedure TPagesDlg.NewEdit(Sender: TObject); var i:integer; begin //i - номер строки данных в таблице привести в соответствие номеру строки в ComboBox1 используя свойство ItemIndex //Для значащих позиций комбинированного списка //копируем данные i-ой записи со //второй страницы формы в //соответствующие поля на первой странице end;
22. Напишите процедуру заполнения комбинированного списка NewComboBox. Сначала к описанию типа класса (объекта) TPagesDIg (многостраничной формы) в разделе interface добавьте декларацию: Type TPagesDlg = class(TForm) //Эта запись уже есть в заготовке модуля {Необходимо вставить}. procedure NewComboBox;
В раздел implementation добавьте описание этой процедуры:
procedure TPagesDlg.NewComboBox; var i,j:integer; begin //Запоминаем активную позицию комбинированного списка //Очищаем комбинированный список ComboBox1.Clear; //Для всех N (переменная получена в процедуре для записи в файл) записей //В обновленный комбинированный список добавляем
//все фамилии из первого столбца таблицы. Используем СвойствоItems метод Add для ComboBox1 //Переходим на позицию j в ComboBox1 end;
23. Сохраните работу, запустите программу, заполните таблицу данными и убедитесь в том, что программа правильно записывает на диск и считывает с диска файлы телефонных справочников.
24. Запрограммируйте команду главного меню «Сохранить изменения в списке записей».
//Сохранить изменения в списке записей procedure TPagesDlg.N10Click(Sender: TObject); var i:integer; begin //Определяем номер активной записи в ComboBox1 (свойство ItemIndex) //Если активна первая страница //то вносим изменения во вторую иначе вызываем NewEdit(ComboBox1); //В обоих случаях обновляем комбинированный список NewComboBox; end;
|
||||||
Последнее изменение этой страницы: 2016-04-26; просмотров: 358; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.129.208.224 (0.006 с.) |