Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Создаю новый элемент в дереве with QuestionResultForm.QuestionTreeView.Items.Add(nil, NewQuest.Name) do



begin
ImageIndex:=0;
Data:=NewQuest;

end;
end;

finally
// Закрываю файл
fs.Free;

end; end; end;

В чтении файла так же ничего сложного нет. Всё очень похоже на запись и со всеми методами ты уже должен быть знаком. Здесь так же мы читаем данные в указатель на структуру PQuestion, поэтому при чтении нужно разыменовывать указатель NewQuest^, чтобы данные записались «по адресу», а не в адрес.

На компакт диске, в директории \Примеры\Глава 25\Test3\Редактор ты можешь увидет ь исходни к уж е написанног о примера.

Вот на этом наш редактор можно считать законченным. Хотя ещё не реализованы обработчики события для кнопок печати и свойств проекта. Но свойства проекта нам не нужны, а вот печать я оставлю тебе. Попробуй сам добавить вывод на печать нашего проекта.


25.5. Тестер.

еперь напишем программу тестирования, которая будет загружать наши проекты, отображать вопросы и собирать статистику правильных ответов. Для этого у нас будет отдельная программа, поэтому создай новый проект и

установи на форму следующие компоненты (мою форму ты можешь увидеть на рисунке 25.5.1):

1. Панель ToolBar с тремя кнопками «Открыть», «Запустить» и «Выход».

1. 2. Компонент StaticText, где будем отображать вопросы. В свойстве Name укажи QuestionLabel и свойство AutoSize установи в false.

2. 3. Список CheckListBox в котором будут отображаться варианты ответов. В свойстве Name укажи QuestionCheckList.

4. Ну и последнее -кнопку «Дальше».

В разделе type объяви структуру TQuestion, такого же вида, как и в редакторе вопросов. Количество и размерность полей структуры должно быть одинаково, потому что мы будем использовать её для загрузки данных из файла. Если хоть какое-то поле будет отличаться, то при загрузке данных произойдёт ошибка.

type PQuestion=^TQuestion; TQuestion=record

Name: String[255];
ResultCount:Integer;
ResiltText: array[0..10] of String[255];
ResiltValue: array[0..10] of boolean;

end;

В разделе private объяви следующие переменные:





Дата публикования: 2014-11-04; Прочитано: 291 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.008 с)...