Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 16.11.2019
Сообщений: 20

Восстановление dfm-файлов по имеющимся pas-файлам

21.01.2020, 11:13. Показов 4819. Ответов 48
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Чтобы долго не тянуть перейду сразу к делу. Есть исходный код delphi, самого исходника с формой нет. Можно ли как-то автоматизированно код преобразить в форму(готовую программу)?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.01.2020, 11:13
Ответы с готовыми решениями:

~ddp, ~dfm, ~pas и т.д
Здравствуйте. В папке проекта нашел несколько файлов с расширениями .ddp, .dfm, .pas, а также файлы с теми же названиями, но с расширениями...

Pas без dfm . в ProjectManager
Доброго времени суток всем. Delphi Berlin 10.1 Вопрос больше ради любопытства нежели из необходимости. Итак... в проекте при его...

Сортировка файлов по форматам с распределением их по имеющимся папкам
Здравствуйте уважаемые форумчане. Имеется 25 папок, наименования которых 1, 2, 3 и так далее. Нужно написать скрипт, который...

48
 Аватар для GoodWeather
886 / 588 / 179
Регистрация: 28.02.2017
Сообщений: 2,359
Записей в блоге: 1
23.01.2020, 10:46
Студворк — интернет-сервис помощи студентам
Как любопытно показывается доп-форма...
Delphi
1
Application.CreateForm(TForm2, Form2);
При каждом нажатии... И разумеется нигде не удаляется...

Добавлено через 12 минут
Заголовки пунктов меню как бы имеются, но восстановить их расположение - неоткуда.
Как и сопоставить какие есть кто (по Name понять что они делают - невозможно).
И зачем-то куча пустых пунктов. Наверное это разделители или выпадающие. Но всё равно лишних слишком много.

Картинки для TToolButton имеются, но в в очень плохом качестве.
Три штуки TToolButton судя по всему "разделители", но зачем было всего 12 кнопок "делить"?
Некоторые видимо должны "зажиматься", пока не определил какие должны, а какие нет.

Разгадал MoveOs()/MoveWindow():
Главное чтоб панелька Centr должна быть малюсенькой (не больше 10x10) и лежать примерно посередине клиентской области формы.

А в StatusBar2 должно быть 4 панельки.
1
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
23.01.2020, 12:34
Удалось скомпилировать и запустить прогу. Но пока обработчики не привязал никуда.

Добавлено через 1 час 22 минуты
Не, народ, меню тут названы по умолчанию и конструкции вида
Delphi
1
    if Form1.N24.Checked or Form1.N19.Checked then
вгоняют в ступор. Непонятно, какие именно пункты меню это.
0
 Аватар для GoodWeather
886 / 588 / 179
Регистрация: 28.02.2017
Сообщений: 2,359
Записей в блоге: 1
23.01.2020, 13:19
Пока всё не переименовать и не назвать хоть как-то вменяемо - без шансов)))
У меня только удалось шоб какие-то три точки рисовало - и всё. Максимум пять, но я уже сам не понял как))
И даже не очень понятно как ей вообще пользоваться, есть вероятность, что без загрузки файла - никак.

Добавлено через 3 минуты
По порядочку, по порядочку...
  • Глобальные массивы: V переименовываем как Vertexes, а E как Edges;
  • Глобальные переменные: N переименовываем как VertexesCount, а M как EdgesCount; ("Лэ" - л0гика!)
  • Эти N24 и N19, раз они Checked - то это пункты-флаги: для начала переименуем как SomeFlagA и SomeFlagB и у них должно быть включено AutoCheck.
  • ...

Добавлено через 10 минут
у... Глобальная константа под именем Pointer, ваще класс! Хотя должна называться VertexesMaxCount.

Добавлено через 3 минуты
Там основные пункты меню задуманы: Файл/Правка/Вид/Инструменты/Сечение/Настройка;
Я создал ещё одну - "Неопознанное", и туда переместил вообще всё, а когда опознаю категорию пункта - перетаскиваю уже на место.
0
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
23.01.2020, 13:29
Ещё есть обработчик procedure TForm1.N16Click(Sender: TObject);, а меню N16 нет.
0
 Аватар для GoodWeather
886 / 588 / 179
Регистрация: 28.02.2017
Сообщений: 2,359
Записей в блоге: 1
23.01.2020, 13:47
16-й есть. Кривое открытие второй формы. Кнопка тоже есть.

Зато при нажатии ToolButton13 дёргается Click у N40. А у него как раз нету Click.
Ну или тут автор взял и возможно единственный раз переименовал. %)))

Добавлено через 2 минуты
о... Или ему этак ненавязчиво ставят Checked..?
0
Модератор
4153 / 2362 / 814
Регистрация: 15.11.2015
Сообщений: 9,496
23.01.2020, 14:22
Координатные оси нарисовало на "Вид сверху" и "Вид спереди".

Добавлено через 32 секунды
Неожиданно. До этого запускал и ничего не было и я "ничего не делал, оно само"
0
 Аватар для GoodWeather
886 / 588 / 179
Регистрация: 28.02.2017
Сообщений: 2,359
Записей в блоге: 1
24.01.2020, 01:38
Кликните здесь для просмотра всего текста
Delphi
1
2
3
4
procedure TForm1.ToolButton8Click(Sender: TObject);
begin
Form1.N36.Click;
end;
Delphi
1
2
3
4
procedure TForm1.N36Click(Sender: TObject);
begin
Form1.ToolButton8.Down:=true;
end;


Добавлено через 2 часа 46 минут
С перерисовкой какая-то конкретная и полная задница.
И сделано было изначально косо, а когда я чуток поправил оказалось удивительное - кто-то глотает события OnPaint.
Первый раз такое вижу. Явно дёргаю Repaint() или его родственников - пофик, не стреляет.

Нужны только три TPanel (которые служат заменителем сплиттера): Vertikal, Horizontal и Centr - остальные тока мешаются, можно смело удалять. Где будет ругаться - просто заменить префикс "P" на "I".

В программе нужно работать, загружая текстовый файл, пример:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
8
0 0 2
2 0 2
2 2 2
0 2 2
0 0 0
2 0 0
2 2 0
0 2 0
6
1 5 8 4
2 3 7 6
5 6 7 8
4 3 2 1
3 4 8 7
2 6 5 1
Добавлено через 5 часов 19 минут

Не по теме:

Жесть бага с этим Repaint() вылезла, просто абзац.
Поведение как-то зависит от расположения контролов. Пока не понял в чём точно дело.
То ли свободного места над самой клиентской областью нету ни пикселя (всё без промежутков подогнано), то ли типа этого...

Вашему вниманию - супер-костыль! Было:

Delphi
1
Form1.Horizontal.Height:=Form1.Centr.Height;
Стало:
Delphi
1
Form1.Horizontal.Height:=Form1.Centr.Height-1;
И о чудо - Repaint() взял и заработал.
Может конечно прочие правки тоже сыграли роль, но факт есть факт: без -1 вызов Repaint() не приводит к OnPaint.

1
0 / 0 / 0
Регистрация: 22.01.2020
Сообщений: 1
26.01.2020, 19:39
Получилось примерно так. Можно вращать, перемещать, ставить точки.

Но в целом явно алгоритмы в программе не совсем корректные.

В частности - при вращении не вращается система координат. В идеале, на сколько я понял - виды спереди, сбоку, сверху не должны вращаться, а вращаться должен только вид перспективы, однако - он вращается вместе с одним из видов.

Готов передать текущий вариант (или немного доработанный), но только за деньга ))))
Миниатюры
Восстановление dfm-файлов по имеющимся pas-файлам  
0
27.01.2020, 08:32
 Комментарий модератора 
vdrazdov, п. 5.9 Правил форума
Запрещено отсылать пользователей из тематических разделов в разделы фриланса, а также рекламировать свои услуги или предлагать/просить/требовать оплату за помощь, кроме разделов для платных услуг.
Предупреждение!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.01.2020, 08:32

Хочу отключить восстановление системных файлов (не восстановление системы)
у меня есть своя программа календаря... и я хочу поставить её вместо файла system32/rundll32.exe но проблема в том что винда отказывается...

Чем отличается Unit1.~dfm от Unit1.dfm
а чем отличается Unit1.~dfm от Unit1.dfm

Программа обработки pas файлов
Помогите пожалуйста дописать программу. Программа работает не совсем корректно. Ключевые слова выводит вроде правильно, а вот перечень имен...

Нахождение файлов pas на диске
Если есть у кого нить программа которая на заданном диске ищет pas файлы то поделитесь пожалуйстаО_о

Собственный редактор pas файлов
планирую сделать миникомпилятор pas файлов(не везде можно поставить delphi :(). Подскажите пожалуйста как осуществить следующее: допустим...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
49
Ответ Создать тему
Новые блоги и статьи
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2. Задача: Обеспечить запись документа в регистр сведений независимо от. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru