Аватар для DiegoGonzalez
0 / 0 / 0
Регистрация: 09.04.2009
Сообщений: 22

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

04.01.2010, 09:54. Показов 23759. Ответов 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
Ответ Создать тему
Опции темы

Новые блоги и статьи
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru