Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.64/14: Рейтинг темы: голосов - 14, средняя оценка - 4.64
2 / 2 / 0
Регистрация: 09.01.2013
Сообщений: 134

Динамические объекты на другой форме

13.02.2013, 23:46. Показов 3118. Ответов 29
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Задача легкая но почемуто не получаетса...Помогите пожалуйста.
В опщем есть две формы. На одной форме создаютса динамические елементы. Как с другой форми к ним обратитса.
пишу в форме 2:
C++
1
 #include "Unit1.h"
не помогает..
Как правильно?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.02.2013, 23:46
Ответы с готовыми решениями:

Динамические объекты
Помогите разобраться как мне сделать чтобы холст графического редактора был динамическим для пользователя. Т.е. чтобы пользователь сам смог...

Динамические объекты, удаление по клику на объект
На форме расположены динамически созданные объекты с разными тегами и по клику на такой объект нужно удалить его если его тег равен...

Одна кнопка по нажатию присваивало имя другой кнопке на другой форме
Есть две формы: MainForm и TestForm, нужно сделать так, чтобы при нажатии на кнопку на форме MainForm, "Captoin" этой копки...

29
2 / 2 / 0
Регистрация: 09.01.2013
Сообщений: 134
14.02.2013, 03:33  [ТС]
Студворк — интернет-сервис помощи студентам
M9ICHIK, на Ваш подход ошибок не видает но и не работает так как нужно.
если пишу(обращаюсь) на той же форме то все работает норм. В чем причина?

Добавлено через 16 минут
Avazart, если б все знал, то б здесь такую мелочь не спрашивал.
На то он и форму что б обсуждать, советувать решения задачи.
Я щитаю, что если задан вопрос, то на него нужно отвечать(советовать), а не говорить не по теме.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.02.2013, 03:35
Цитата Сообщение от Best777 Посмотреть сообщение
Avazart, если б все знал, то б здесь такую мелочь не спрашивал.
На то он и форму что б обсуждать, советувать решения задачи.
Читать книги для начала надо, а потом задавать вопросы ...
0
2 / 2 / 0
Регистрация: 09.01.2013
Сообщений: 134
14.02.2013, 03:40  [ТС]
Я понимаю что решения вопроса должно быть легким.
Но сталкиваюсь с етим впервые....
Если просто тинуть объект с форми на форму, то ето легко. А вот с динамичискими вышла проблемка.
Avazart, если как я понял решения легкое, то подскажите в какой книжке ето нормально описано, или дайте наконец то нормальный совет, а не причитания!
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
14.02.2013, 03:45
Читайте про то как "включаются" файлы и "процесс компиляции"
Читайте про "области видимости в С++"
Читайте про ООП - классы, ф-ции члены класса, методы итп.

Все это приведет к пониманию того что такое модуль ( cpp и h файл ) и того что форма это класс а значит и обращаться с ней нужно соответственно...

Все это легко гуглится и найдется почти в любой книге для новичка ....

Добавлено через 53 секунды
Цитата Сообщение от Best777 Посмотреть сообщение
или дайте наконец то нормальный совет, а не причитания!
Я не отвечаю на глупые вопросы ибо ответ вы все равно не поймете не имея базы.
0
2 / 2 / 0
Регистрация: 09.01.2013
Сообщений: 134
14.02.2013, 03:54  [ТС]
Как я понял, то нужно подключить в форму2 не только Unit1 а и его динамически создающие обьекти.
где то находил что их нужно так и прописывать в паблике в файле Unit2.h как уже и советовали, но результата все ровно нету...
0
return (true);
 Аватар для mimicria
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
14.02.2013, 08:19
Цитата Сообщение от Best777 Посмотреть сообщение
но результата все ровно нету
1. Заголовки форм подключаются перекрёстно. Т.е. в unit1.cpp написано #include "unit2.h" и наоборот
2. Массив указателей объявляется в секции public первой формы в файле unit1.h
C++
1
2
3
4
public:     // User declarations
        __fastcall TForm1(TComponent* Owner);
        TRadioButton *Radio[300];
};
3. В первой форме создаются объекты (в примере только 1)
C++
1
2
3
4
5
 Form1->Radio[0]=new TRadioButton(this);
 Form1->Radio[0]->Parent=Form1;
 Form1->Radio[0]->Name="Radio0";
 Form1->Radio[0]->Checked=true;
 Form2->Show();
4. Во второй форме объекты изменяются
C++
1
Form1->Radio[0]->Checked=false;
Что еще надо то?
0
2 / 2 / 0
Регистрация: 09.01.2013
Сообщений: 134
14.02.2013, 12:38  [ТС]
Почему когда прописую массив указателей объявляется в секции public первой формы в файле unit1.h, то к классу который прописан в форме нельзя обратится с формы1? ошибка памяти выбивает. если удаляю с етой секции и прописую в голове cpp массив указателей то все норм, но мне нужно еще и с формы2 работать.

Добавлено через 1 минуту
Свой класс я прописал в сpp, а его надо тоже в h?
0
14.02.2013, 12:41

Не по теме:

Кто может что-то разобрать в этом бредовом потоке сознания?

0
2 / 2 / 0
Регистрация: 09.01.2013
Сообщений: 134
14.02.2013, 12:57  [ТС]
Ладно mimicria....
По пунктах:
1) Сделал как Вы написали. С формы2 можно обратится!
2) Начал тестировать программу.
3) И при обращении к классу в котором прописано обращения к моему Radio выбивает ошибку памяти.(класс объявлен и инициализировавший в сpp-файле формы один.
P.S. Если удаляю объявления с public то обращение к классу работает
0
return (true);
 Аватар для mimicria
1977 / 1112 / 221
Регистрация: 19.04.2011
Сообщений: 2,346
14.02.2013, 14:28
Значит, ошибки в классе. Что толку гадать без исходников и текста ошибки?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
14.02.2013, 14:28
Помогаю со студенческими работами здесь

Редактироваь объекты на другой форме
Помогите пожалуйста. Нужно сделать так чтобы при нажатии кнопки на одной форме редактировались обьекты на другой: private void...

Редактировать объекты на другой форме
Помогите пожалуйста. Нужно сделать так чтобы при нажатии кнопки на одной форме редактировались обьекты на другой: private void...

Как уничтожать динамические объекты и вообще объекты, если это необходимо сделать в их процедурах?
Создать отдельную процедуру CloseObject(Object: TObject) и вызывать ее в конце процедуры или так тоже нельзя? А то бесят эти access...

Динамические объекты js
Здраствуйте. Помогите с кодом в такой задачке. Смена цвета текста с одного цвета на другой и обратно с периодом 1с. Буду благодарен в...

Динамические объекты
Сутки добрые, подскажите чайнику!! Есть код if FNode.selectNodes('//name').item.text = 'check' then begin ...


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

Или воспользуйтесь поиском по форуму:
30
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru