// Если файл не выбран, то покинуть метод:

if( !OpenDialogl->Execute() ) return;

// Сохранить выбранное имя файла в переменной AnsiString FILE_NAME_STR;

FILE_NAME_STR = OpenDialogl->FileName;

Далее ничего менять не надо — переменная FILE_NAME_STR будет теперь содержать не жестко заданное название, а то, которое выберет пользователь.

В начало метода считывания сохраненного пасьянса SaveltemClick() тоже надо добавить только три оператора:

// Если файл не выбран, то покинуть метод:

if( !SaveDialogl->Execute() ) return;

// Сохранить выбранное имя файла в переменной AnsiString FILE_NAME_STR; * FILE_NAME_STR = SaveDialogl->FileName;

Теперь раскладывать пасьянсы станет значительно удобнее.

Другие возможности работы с файлами в C++Builder

Ниже приводится таблица, в которой кратко описаны возможности основных стандартных файловых функций в C++Builder. С их помощью можно решить большинство прикладных задач, связанных с обработкой сохраненных на жестком диске данных.

Примечания к таблице.

1. Часто используемый параметр FileName должен содержать полное имя файла вместе с полным путем доступа к нему. Если путь не указан, то файл ищется в текущей папке, которая исходно может быть в зависимости от настроек программы либо папкой, откуда она была запущена, либо одной из стандартных папок Windows.

FileName применяется для работы с закрытыми файлами.

Другой упоминаемый в таблице параметр функций — идентификатор открытого файла iFile.

2. Большинство функций возвращают значение (~1), если их выполнение завершилось неудачно. Особые случаи оговариваются специально.

241