§ 7. Работа со стандартными диалогами
7.3. Диалоги для работы с файлами
Диалоги для открытия и сохранения файлов (пример 7.8) используются в различных приложениях. Основное свойство компонентов OpenDialog и SaveDialog, в котором имя файла возвращается в виде строки, — это свойство FileName. Если задать данное свойство на этапе конструирования в окне инспектора объектов, то при открытии диалога, оно будет появляться в строке Имя файла. Пример 7.9. Создать проект «Числа». Сгенерировать случайные числа в заданном диапазоне и сохранить их в файл. Посчитать сколько в файле чисел, кратных заданному. Результат вывести на форме. Этапы выполнения задания
using namespace std; Имя файла, которое принимает диалог, является строкой. В системе программирования CBuilder поддерживается свой собственный тип строк: String. Для совместимости этого типа строк с типом string, необходимо преобразование, которое можно выполнить, используя команду c_str(). Далее работа с текстовыми файлами происходит так же, как и в среде CodeBlocks. Рассмотрим некоторые свойства диалогов для работы с файлами. Типы искомых файлов, появляющиеся в строке Тип файла, задаются свойством Filter. Данное свойство можно задать на этапе проектирования, нажав кнопку около свойства Filter в окне инспектора объектов (пример 7.10). Редактор фильтров позволяет устанавливать маски шаблонов файлов. В поле Filter Name задается тот текст, который пользователь увидит в строке Тип файла окна диалога. В столбце Filter задается шаблон (символ «*» обозначает любой набор символов, символ «?» заменяет один любой символ). Свойство DefaultExt определяет значение расширения файла, задаваемое по умолчанию. Если значение этого свойства не задано, пользователь должен указать в диалоге полное имя файла с расширением. Если значение задано, то имя файла можно указывать без расширения (пример 7.11). Свойство FilterIndex определяет номер фильтра, который увидит пользователь при открытии окна диалога. Свойство InitialDir компонентов OpenDialog и SaveDialog позволяет настроить папку (пример 7.12), содержимое которой будет открываться при первом вызове диалогового окна. Если значение не установлено, то в первый раз будет открываться папка Мои документы, в дальнейшем — последняя использовавшаяся папка. Свойство Title позволяет задать заголовок диалогового окна.. |
Пример 7.8. Стандартные диалоги для открытия и сохранения файла: Пример 7.9. Форма на этапе конструирования: Обработчик события OnClick для компонента Button1
Обработчик события OnClick для компонента Button2
Работающее приложение: Содержимое текстового файла: Пример 7.10. Свойство Filter: Пример 7.11. Окно Сохранение В инспекторе объектов установлены фильтры, которые описаны в примере 7.10. Значения свойств DefaultExt и FilterIndex: Пример 7.12. Если необходимо, чтобы при сохранении или загрузке файла открывалась текущая папка (папка, в которой находится скомпилированный файл проекта), то в событии FormCreate необходимо прописать команды:
|