Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.92/121: Рейтинг темы: голосов - 121, средняя оценка - 4.92
 Аватар для DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22

Вызов формы из другой формы

04.01.2010, 09:54. Показов 23592. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что то не клеится....вроде не раз уже делал подобное, все стандартно
C++
1
2
3
 DrawForm^ Form;
 Form=gcnew DrawForm;
 Form->Show();
на это он выдает 8 ошибок типа

Ошибка 1 error C2065: DrawForm: необъявленный идентификатор c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 330 Fract
Ошибка 2 error C2275: System::Windows::Forms::Form: недопустимое использование этого типа в качестве выражения c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 330 Fract
Ошибка 3 error C2513: System::Windows::Forms::Form: нет переменных, объявленных перед '=' c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 331 Fract
Ошибка 4 error C2061: синтаксическая ошибка: идентификатор "DrawForm" c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 331 Fract
Ошибка 5 error C2065: DrawForm: необъявленный идентификатор c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 330 Fract
Ошибка 6 error C2275: System::Windows::Forms::Form: недопустимое использование этого типа в качестве выражения c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 330 Fract
Ошибка 7 error C2513: System::Windows::Forms::Form: нет переменных, объявленных перед '=' c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 331 Fract
Ошибка 8 error C2061: синтаксическая ошибка: идентификатор "DrawForm" c:\documents and settings\admin\рабочий стол\fract\fract\Form1.h 331 Fract

Может я что то забыл....? Помогите пожалуйста...
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.01.2010, 09:54
Ответы с готовыми решениями:

Вызов формы из другой
Нужно из одной формы проекта вызвать другую и блокировать первую, затем, по закрытию второй, разблокировать первую. Из первой вторую я...

Вызов метода из другой формы
Доброго времени суток! Волею судеб пришлось осваивать VC++ 2008. Столкнулся с такой проблемой: Есть класс Form1 В нем объявлен...

VS 2008. Как можно обратиться из формы к control члену другой формы?
Я пытался так: Form1.cpp System::Void Form1::button1_Click(System::Object^ sender, System::EventArgs^ e) { Form2 ^f2; ...

20
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
09.11.2016, 00:28
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от spy686 Посмотреть сообщение
Необходимо было выполнить действия на Form1 при закрытии Form2 (например разблокировать Form1 ).
Это частная задача и из неё никак не следует что:
Цитата Сообщение от spy686 Посмотреть сообщение
надо Добавить обработчик события на этой же Form1
тем более:
Цитата Сообщение от spy686 Посмотреть сообщение
Это можно было бы сделать проще и красивее в файле cpp который бы объединял две Формы
каждая форма это даже не класс, это шаблон. А такая связь нежелательна даже для классов. Ведь в одном проекте Вам нужны будут одни сочетания, а в другом - другие. Событие нужно объявить в том классе для которого оно вызывается. А если в этом событие требуется доступ к другому классу, - окну, например, то это можно сделать по ссылке на экземпляр, тогда меняя ссылку и её тип можно связывать событие с любой формой. Более того. Я бы написал класс в котором есть подобное событие и оставил такой же (исходный) класс без него. На разные случаи жизни. Тогда это разные классы. Но глядя в их код и комментарии, легко понять, что и зачем они делают. А вот написать событий для одного класса в определении другого/других, это сделать всю систему непонятной уже через пару месяцев. Потом будет не ясно где искать и что менять. Хотя в принципе всё можно найти, но лучше так не делать.
Цитата Сообщение от spy686 Посмотреть сообщение
В программировании не спец, но что накопал, тем и пользуюсь.
Я тоже. Связь классов в C++/cli оказывается вопрос не тривиальный. В С# эти ухищрения не нужны, а в натуральном С++ такие приёмы используются лишь в очень больших и сложных проектах. Во всяком случае, частенько, достаточно тёртые ребята не сразу въезжают.
А я без какого либо опыта ковырял этот вопрос... не скажу сколько времени. Во-первых, не поверите, а во-вторых - не помню.
Ну да ладно. Рад был пообщаться, spy686, но надеюсь, что если у Вас будут вопросы, Вы создадите новую тему. Потому-как для темы в более 8 килопросмотров, такие диалоги просто ни к чему. Ведь это будут читать люди которым нужно получить информацию по вопросу топика.
Всего хорошего.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.11.2016, 00:28
Помогаю со студенческими работами здесь

Как передать в метод формы данные из другой формы?
Народ, подскажите юзеру: создал на Visual C++ 2005 с помощью designer'а Form1 с единственной кнопкой на ней. Вызываю по нажатию этой...

Вызвать из одной формы метод другой формы
У меня такая проблема. Есть 2 формы: Form1 и Link. Я пишу в Form1: #include "Link.h" public ref class Form1 : public...

Вызов 2ой формы
Создаю проект в visual studio на c++ с WinForms При добавлении формы возникает ошибка , которую можно решить, добавив код #include...

Вызов формы из класса
Необходимо написать класс, который вызывается по кнопке и создает вторую форму. Создал кнопку вызывающую класс Myform.h #include...

Вызов из одной формы другую.
Всем привет не подскажите как вызвать из Form1 Form2, точнее из Form1 получается вызывать Form2, а когда прописываешь , чтобы из Form2...


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

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это дополнительная запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru