Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
begin TQuestionResultForm(ActiveMDIChild).FileName:=SaveDialog1.FileName; SaveButtonClick(nil);
end; end;
Здесь я отображаю окно выбора имени файла. Если пользователь что-то выбрал, то сохраняю имя файла в свойстве FileName активного окна, и вызываю обработчик события кнопки «Сохранить», где происходит сохранение.
Теперь посмотри на обработчик события OnClick для кнопки «Открыть» проект:
procedure TTestEditorForm.OpenButtonClick(Sender: TObject);
var
fs:TFileStream;
i, Count:Integer;
Str:String[5];
NewQuest:PQuestion;
begin
// Показать окно открытия файла
if not OpenDialog1.Execute then exit;
// Открыть файл для чтения
fs:=TFileStream.Create(OpenDialog1.FileName, fmOpenRead);
// Перейти в начало файла и прочитать заголовок
fs.Seek(0,soFromBeginning);
fs.read(Str, SizeOf(Str));
// Если заголовок равен тексу "Тест", значит это "вопрос-
// варианты ответов".
if Str='Тест' then
begin
// Создать новое окно теста
QuestionResultForm:=TQuestionResultForm.Create(Owner);
// Сохранить имя открытого файла в объекте окна
QuestionResultForm.FileName:=OpenDialog1.Filename;
// Прочитать имя проекта fs.Read(QuestionResultForm.ProjectName, sizeof(QuestionResultForm.ProjectName));
try
// Прочитать количество вопросов
fs.Read(Count, sizeof(Count));
// Запустить цикл чтения вопросов
for i:=0 to Count-1 do
begin
// Создаю новую структуру в памяти для вопроса
NewQuest:=New(PQuestion);
// Читаю структуру
fs.Read(NewQuest^, sizeof(TQuestion));
// Добавляю структуру в контейнер
QuestionResultForm.QuestionList.Add(NewQuest);
Дата публикования: 2014-11-04; Прочитано: 304 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!