11. Ввод и вывод

В этом поможет свойство Filter (Фильтр). В него записывается строка, которая содержит текст Сохраненные пасьянсы, выводимый в списке Тип файлов, и маску соответствующих файлов *.sol, отделенную от него символом «¦».

h02401.jpg

Кроме того, при открытии или сохранении пасьянсов было бы удобно указывать имя файла без расширения, чтобы это расширение подставлялось автоматически. Для этого предназначено свойство DefaultExt, в которое записывается нужное расширение (без предварительной точки) — SOL.

Для открытия файла с отложенной партией надо, чтобы этот файл существовал. Некоторые программы допускают «открытие» несуществующих файлов, при необходимости создавая их самостоятельно, но в нашем случае надо потребовать от человека, чтобы открываемьТй файл существовал. Такое требование задается установкой свойства ofFileMustExist (файл должен существовать), которое является подсвойством Options.

Установите в свойстве ofFileMustExist значение true.

Для открытия нужного стандартного диалогового окна применяется метод Execute() без параметров. Он возвращает значение true, если пользователь корректно выбрал имя файла и щелкнул на кнопке Открыть или Сохранить. В противном случае выдается значение false.

А как получить выбранное имя файла? Если метод Execute() вернул значение true, то нужное имя вместе с полным путем доступа будет храниться в свойстве FileName.

Чтобы выполнить выбор файла для сохранения, надо предварительно удалить описание константы FILE_NAME_STR (жестко заданный путь больше не понадобится), а в начало методов сохранения и восстановления пасьянса добавить новую переменную FILE_NAME_STR (ее имя совпадет с именем константы — так сделано специально, чтобы не вносить много поправок в старый код).

г

AnsiString FILE_NAME_STR;

Для выбора файла с ранее сохраненным пасьянсом надо в начало метода LoadltemClick() внести следующий код:

240