|
28 / 24 / 10
Регистрация: 26.04.2015
Сообщений: 307
|
||||||||||||||||
Дочерние формы (не MDI) и STL::List22.08.2016, 23:53. Показов 4052. Ответов 63
Хай всем, нашёл тему по форуму, близкую к моей задаче:
Динамическое создание и удаление компонентов., но возник вопрос, корректно ли использование того кода для компонентов формы
Unit1.cpp
0
|
||||||||||||||||
| 22.08.2016, 23:53 | |
|
Ответы с готовыми решениями:
63
Работа с MDI и Дочерние формы MDI вместо закрытия главной формы закрываются дочерние Как сделать что бы дочерние формы в MDI application delphi сразу не открывались при запуске программы |
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||
| 25.08.2016, 21:35 | |||
|
Добавлено через 3 минуты
0
|
|||
|
28 / 24 / 10
Регистрация: 26.04.2015
Сообщений: 307
|
||
| 25.08.2016, 21:59 [ТС] | ||
|
я не правильно выразился, уничтожаем мы одно из дочерних окон, но при этом я вижу в дебаге что после отработки OnClose, форма получив Action = caFree убивается, и сразу же уменьшается Count у TComponentList.
В STL::List же в OnClose делал принудительно delete frm_2; frm_2 = NULL; Почему так?
0
|
||
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 25.08.2016, 22:11 | ||
|
0
|
||
|
|
||
| 28.08.2016, 13:22 | ||
|
Почему не использовать TObjectList или TComponentList а использовать STL по тому что это дело ситуации в большинстве случаев STL удобнее.
0
|
||
|
236 / 196 / 21
Регистрация: 04.06.2014
Сообщений: 1,309
|
||
| 28.08.2016, 15:09 | ||
|
0
|
||
|
2083 / 1575 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||
| 28.08.2016, 19:27 | |||||
|
Добавлено через 39 секунд Добавлено через 1 час 48 минут
0
|
|||||
| 29.08.2016, 09:31 | |
|
0
|
|
| 29.08.2016, 09:36 | |
|
Не по теме: volvo =-O
0
|
|
|
236 / 196 / 21
Регистрация: 04.06.2014
Сообщений: 1,309
|
|||
| 29.08.2016, 10:41 | |||
|
Добавлено через 16 минут
0
|
|||
|
Супер-модератор
|
||
| 29.08.2016, 10:42 | ||
|
0
|
||
|
236 / 196 / 21
Регистрация: 04.06.2014
Сообщений: 1,309
|
||
| 29.08.2016, 10:54 | ||
. Результат то выдавался один, для одинаковых тестов. Там, не один я смеялся.
0
|
||
|
Модератор
3410 / 2182 / 354
Регистрация: 13.01.2012
Сообщений: 8,469
|
|
| 29.08.2016, 11:01 | |
|
volvo, если я пишу консоль/библиотечную функцию и мне нужно организовать список, то наверное я буду использовать STL (и мне кажется что и вы тоже будете) потому что это переносимое решение не только в другие ОС но и в другие среды причем при нулевых или даже положительных "побочных" эффектах со стороны инструментария
0
|
|
|
|
|||||
| 29.08.2016, 11:50 | |||||
![]() Добавлено через 2 минуты Одно дело пилить все с нуля под каждую ос, другое устранить огрехи.
0
|
|||||
|
28 / 24 / 10
Регистрация: 26.04.2015
Сообщений: 307
|
||||||||||||
| 29.08.2016, 17:13 [ТС] | ||||||||||||
|
И последующие комменты Avazart про целесообразность STL весьма разумные, ведь тот же multimap весьма удобен для работы с массивом пар элементов с повторением, а vector приятная замена обычных дин. масс без жёсткого слежения за утечками памяти. ------------------ Конечная задумка программы - это использовать формы-дочки для GUI-визуализации создания таблиц базы данных. Есть программный продукт ER-Win, и в его физ. или логич. моделях графически можно создавать ER-диаграммы "сущность-связь" со всеми ключами и инф. полями. Мне интересно сделать аналогичную функциональность, программно создав файл б.д. (сделано), создать сущности - объекты класса, они же дочерние формы, каждая из которых будет представлять отдельную таблицу б.д. (сделано), наполнить эти формы нужными компонентами TEdit, TButton, TLabel и прочие что понадобятся (это в процессе). Далее после создания и заполнения компонентов именами и типами будущей таблицы сделать SQL->Text на CREATE TABLE. Почему дочерние формы для этой графич. цели? - потому что полностью всё в openGL я не потяну, да и наверно нет смысла, т.к. ф-циональность формы полностью покрывает потребности) ------------------ В догонку, вопрос по теме: я так и не понял (допустим на дочерних формах сейчас только 1 динамич. Edit), как узнавать то, что я написал какой-то текст в Edit 1-й дочерней формы, а не 3-й? Мне нужно - проходиться в цикле и сравнивать *Sender формы с чем-то и потом узнав что работаю с формой 3 получать данные с Edit именно 3-й формы; - или отлавливать активность формы, - или перефразировать структуру класса, создавая объект TComponentList, в котором будут поля-указатели на саму форму-дочку и TComponentList,ы Edit и других компонентов? - или что? Просто пока с этим у меня полная каша... Потому что я хочу правильно связать визуализацию с ООП, чтобы я мог манипулировать дочерними окнами как объектами класса. На данный момент с подачи volvo, Fulcrum_013 и своих изысканий по гуглу, код выглядит так: Unit1.h
0
|
||||||||||||
|
|
||
| 29.08.2016, 17:36 | ||
|
Может не стоит плодить отдельные формы? Использовать TPageControl + TFrame т.е все внутри основного окна, но со сменой фреймов.
Добавлено через 1 минуту Кстати в деструкторе тоже не плохо удалять их. Добавлено через 4 минуты Подмена WndProc тоже не не ясна. Добавлено через 3 минуты Если же хотите делать именно формами то может стоит почитать про MDI приложения.
0
|
||
|
28 / 24 / 10
Регистрация: 26.04.2015
Сообщений: 307
|
|||||||||||
| 29.08.2016, 18:14 [ТС] | |||||||||||
"Поскольку много подчиненных форм имеют одинаковое имя и одинаковый код, то не следует в коде программы (если код используется несколькими экземплярами формы) использовать имя формы. В модуле формы для ссылок на текущую форму используйте ключевое слово Me." (http://www.codenet.ru/progr/vbasic/bit/MDI.php (с))
0
|
|||||||||||
|
|
|||
| 29.08.2016, 18:16 | |||
|
Если вы не знаете что такое конструктор, список инициализации, деструктор. Советую начать с азов С++, а не формошлепства в билдере.
0
|
|||
|
28 / 24 / 10
Регистрация: 26.04.2015
Сообщений: 307
|
||||||||
| 29.08.2016, 18:29 [ТС] | ||||||||
http://ymah.narod.ru/sem8/image022.jpg
0
|
||||||||
|
|
|||
| 29.08.2016, 18:49 | |||
|
Как по мне вероятно стоило бы не формы использовать, а отрисовывать в TPaintBox руками свои собственные объекты. Не по теме: Вот где бы пригодился Qt-шний QGraphicsScene+QGraphicsView, опять же со сглаживанием линий итп...
0
|
|||
| 29.08.2016, 18:49 | |
|
mdi - дочерние окна перетирают друг друга
Работа с STL list + пропись List.h
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Сам себя обучал rest api
anaschu 02.07.2026
Педагогический лайфхак: Почему чистый REST API для ученика намного круче, чем готовые библиотеки
Когда мы отказались от капризного JAR-файла AnyLogic и переписали код на стандартный HttpClient,. . .
|
rest api anylogic - выполнение модели на своём русском сайте
anaschu 02.07.2026
Как подружиться с AnyLogic Cloud API, победить провайдеров и развернуться Java-бэкенд в Docker на бесплатном хостинге: Двухдневный лог борьбы
Всем привет! Хочу поделиться свежим (и довольно. . .
|
Где деньги лежат
kumehtar 02.07.2026
Это - японская подводная лодка I-52 (тип C2, кодовое имя Momi) вышла из Японии в марте 1944 года с миссией в оккупированную немцами Францию (Лорьян). Это была одна из «Янаги»-миссий по обмену. . .
|
Krabik для WoW 3.3.5a, многоязычный
AmbA 02.07.2026
Допилил бота, думаю что окончательно. Изменения:
- добавлена многоязычность
- добавлено снятие скриншотов
- добавлено поддержание бафов хождения по воде (для жреца, дк и шамана)
- и так, по. . .
|
|
Алиса нашла кучу ошибок компиляции и запуска в проекте, который без проблем компилировался и запускался)))
anaschu 30.06.2026
Я пока посмеюся, но завтра проверю. А вообще интерсно. Дал алисе файл, в котором точно нет ошибок компиляции и запуска, и попросил их найти. Нашла кучу)))
Критические ошибки, мешающие компиляции и. . .
|
сукцессия 16. Общий обзор, в основном что бы другие ии поняли
anaschu 29.06.2026
# Передаточный документ: модель микоризной сукцессии (для нового чата)
Этот документ предназначен для того, чтобы новый чат Claude мог продолжить
работу без необходимости заново разбираться в. . .
|
сукцессия 15 неявная схема
anaschu 29.06.2026
Алиса
Калибровка параметров симбиотической модели: технический обзор
Содержание:
Введение
Постановка проблемы
Технические аспекты реализации
Процесс внедрения изменений
|
сукцессия 14. Обновленная схема модели
anaschu 28.06.2026
ГЛОБАЛЬНАЯ ОПИСАТЕЛЬНАЯ СПЕЦИФИКАЦИЯ ЭКОСИСТЕМНОЙ МОДЕЛИ «SOIL CHEMISTRY & MYCORRHIZA 2. 0»
https:/ / ibb. co/ NnkGpfMd
Представленная интегрированная схема описывает непрерывную нелинейную. . .
|