|
0 / 0 / 4
Регистрация: 21.08.2017
Сообщений: 208
|
||||||||||||||||
Написание файлового менеджера: добавление заголовочных файлов к проекту, а также прямая и обратная совместимость кода в02.05.2019, 20:23. Показов 2979. Ответов 26
Добрый день! Я пишу в шестом билдере файловый менеджер для курсовой работы как оконное приложение и не могу понять, в какой версии Borland C++ Builder или Embracadero разрабатывался этот код. Будет ли программа, написанная в старой версии, работать в новой и наоборот? А также как создавать новые заголовочные или cpp-файлы для текущего проекта?
Я пробовал использовать «Project -> Add To Project» для чернового консольного приложения, но в результате открывается окно проводника, который может только открыть уже существующий файл, а не создать новый. В итоге я создал на диске D папку с будущим проектом и через «File -> New -> Other… -> Cpp File» создал два cpp-файла перед созданием проекта, из-за чего возникли проблемы с компиляцией. По-хорошему, я по ходу работы в проекте кликаю правой клавишей по древовидной структуре, выбираю пункт «Создать -> Файл CPP» после чего среда сама подключает нужные библиотеки и после компиляции нужные заголовочные файлы «встают» сами. Файлы PropertyFile.cpp и PropertyDrive.cpp сами компилироваться не захотели, ссылаясь на ошибку Error: Field Form1->ImageList2 does not have a corresponding component. Remove the declaration? (Yes/No/Cancel/Help) и заголовочные файлы не «подтянулись». Придётся делать всё вручную и самому создавать недостающие заголовочные файлы. Какие библиотеки я должен подключить в двух вышеупомянутых файлах CPP и нужны ли первые девять строк в файле Unit1.h? Чтобы скомпилировать файл, не запуская его, я шёл в Project -> Compile Unit. И тут вопрос: после этой команды скомпилируется весь проект или только открытый в данный момент времени файл? Извините за огромное количество вопросов, просто курс визуального программирования я «проспал» и без помощи со стороны или хотя бы списка литературы с подробными объяснениями я в этом обилии форм, кнопок и свойств «заблужусь». В какой версии билдера или эмбракадеры лучше писать этот код? Где и какие библиотеки нужно добавить или убрать? Как добавить к проекту header- или cpp-файл непосредственно в ходе работы с ним и как скомпилировать отдельную подпрограмму, не запуская весь проект? Работаю в Borland C++ Builder 6. Unit1.h
0
|
||||||||||||||||
| 02.05.2019, 20:23 | |
|
Ответы с готовыми решениями:
26
Написание консольного файлового менеджера Про добавление заголовочных файлов в заголовочных файлах |
|
0 / 0 / 4
Регистрация: 21.08.2017
Сообщений: 208
|
|
| 05.05.2019, 14:45 [ТС] | |
|
0
|
|
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
|
| 05.05.2019, 15:39 | |
|
БузинВладимир, вы сейчас говорите не на моём лексиконе. Я не изучал программирование и не штудировал спец.литературу по этому предмету. Поэтому я избегаю давать советы там, где студенты ожидают теоретически грамотной рекомендации. Мой совет помог исправлению ошибки? ОК; а объяснять своему преподавателю почему так, а не иначе..., ну - это ваша головная боль.
Не нужно было спать на лекциях
0
|
|
|
Модератор
|
||
| 06.05.2019, 16:13 | ||
|
0
|
||
|
0 / 0 / 4
Регистрация: 21.08.2017
Сообщений: 208
|
|||||||||||
| 07.05.2019, 09:32 [ТС] | |||||||||||
|
Я модернизировал программу: в контекстном меню создал две кнопки: Cut и Paste, а также две глобальные переменные: filepath и filename. При нажатии на первую кнопку в этих глобальных переменных запоминаются текущий путь и имя файла, а на вторую - в зависимости от выполнения команды перемещения выводится сообщение об успешности или ошибке операции. Какие ещё случаи я не предусмотрел в алгоритме перемещения? Чем MoveFile отличается от MoveFileEx или MoveFileW? И как при нажатии на кнопку вывести диалоговое окно с полем для переименования файлов и кнопками OK и Cancel, если я буду создавать кнопку Rename?
Unit1.cpp
0
|
|||||||||||
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
|||||||
| 07.05.2019, 13:00 | |||||||
И добавить в конец: FileListBox1->FileName = filename; чтоб фокус не сползал.
0
|
|||||||
|
0 / 0 / 4
Регистрация: 21.08.2017
Сообщений: 208
|
||||||
| 08.05.2019, 11:50 [ТС] | ||||||
|
Что значит "один файл не должен быть перемещён дважды? Я в условии проверял, выполнилась ли операция перемещения и в зависимости от его выполнения выводил сообщение об успешности или ошибке. Как изменить условие проверки?
Добавлено через 3 часа 36 минут Я решил сделать кнопки Cut и Paste неактивными по умолчанию так, чтобы кнопка Cut стала активной только когда в FileListBox будет выделен какой-нибудь элемент списка, а кнопка Paste - тогда, когда будет нажата кнопка Cut и записаны путь к файлу и его имя. Я использовал событие OnChange для FileListBox и OnClick для Cut, но первое событие не сработало, кнопка Cut всё равно активна. Как сделать так, чтобы кнопка Cut была активна или неактивна в зависимости от того, был ли выбран файл в FileListBox или нет?
0
|
||||||
|
Практикантроп
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
|
|
| 08.05.2019, 14:03 | |
|
0
|
|
| 08.05.2019, 14:03 | |
|
Реализация файлового менеджера Исходник файлового менеджера Совте о создании файлового менеджера Смена файлового менеджера по умолчанию Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|