Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.93
crashc
24 / 24 / 2
Регистрация: 26.07.2009
Сообщений: 414
#1

Открытие формы из главной формы - C++/CLI WinForms

31.01.2012, 20:26. Просмотров 1869. Ответов 15
Метки нет (Все метки)

Здравствуйте! Скажите пожалуйста, как вызвать форму из главной формы? Если сказать по -другому, то мне надо, чтобы из главной формы можно было открыть второстепенную!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.01.2012, 20:26
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Открытие формы из главной формы (C++/CLI WinForms):

Открытие формы
И так мне по нажатию кнопки нужно открыть другую форму их названия-MyForm...

Открытие формы по таймеру
Всем доброго времени суток! На данный момент я пытаюсь сделать таймер для...

Открытие из одной формы другой
Задача такая. На форме есть кнопка. По клику по кнопке открывается другая форма...

Открытие одной формы из другой
Здравствуйте! Создал две формы MyForm и MyForm1 В MyForm.h подключил...

Открытие консоли перед открытием формы
Поставил 2012 студию (наконец-то в cli работают подсказки intelisense). Но...

Открытие одной формы внутри другой
Добрый Всем вечер. В С++ я пока очень слаб, поэтому не ругайте. А по существу...

15
skaa
Хочу в Исландию
1035 / 834 / 119
Регистрация: 10.11.2010
Сообщений: 1,629
31.01.2012, 21:27 #2
C++
1
2
                 FormSecondary ^fmSecondary=gcnew FormSecondary();
                 fmSecondary->Show();
, где FormSecondary - имя класса второстепенной формы.
1
crashc
24 / 24 / 2
Регистрация: 26.07.2009
Сообщений: 414
01.02.2012, 18:37  [ТС] #3
Вот, чем меня "обрадовал" Visual Studio:
Ошибка 3 error C2065: Form_Rez: необъявленный идентификатор g:\my documents\upi\programmirovanie\физика\prog\phis_project\phis_project\Form1.h 454
Ошибка 4 error C2065: fmSecondary: необъявленный идентификатор g:\my documents\upi\programmirovanie\физика\prog\phis_project\phis_project\Form1.h 454
Ошибка 5 error C2061: синтаксическая ошибка: идентификатор "Form_Rez" g:\my documents\upi\programmirovanie\физика\prog\phis_project\phis_project\Form1.h 454
Ошибка 6 error C2065: fmSecondary: необъявленный идентификатор g:\my documents\upi\programmirovanie\физика\prog\phis_project\phis_project\Form1.h 455
Ошибка 7 error C2227: выражение слева от "->Show" должно указывать на тип класса, структуры или объединения либо на универсальный тип g:\my documents\upi\programmirovanie\физика\prog\phis_project\phis_project\Form1.h 455
Самое интересное - за всё время написания программы, у меня не было, такого кол-ва ошибок!

Добавлено через 5 минут
Может, ещё, кто-то знает, как из формы Form1 вызвать форму Form2, так чтобы можно было пользоваться Form1! И не выдавало кучу предыдущих ошибок!!!
0
skaa
Хочу в Исландию
1035 / 834 / 119
Регистрация: 10.11.2010
Сообщений: 1,629
01.02.2012, 18:53 #4
А меня не "обрадовал", у меня всё прекрасно работае... Надо ведь вот что ещё сделать:
C++
1
#include    "FormSecondary.h"
!
1
crashc
24 / 24 / 2
Регистрация: 26.07.2009
Сообщений: 414
01.02.2012, 19:18  [ТС] #5
Суть ошибки понятна! Только ошибка в запуске, всё равно, присутствует!!!
Ошибка 1 fatal error C1083: Не удается открыть файл include: Form_Rez.h: No such file or directory g:\my documents\upi\programmirovanie\физика\prog\phis_project\phis_project\Form1.h 3
0
skaa
Хочу в Исландию
1035 / 834 / 119
Регистрация: 10.11.2010
Сообщений: 1,629
01.02.2012, 19:33 #6
Нажми Ctrl-F и поищи Form_Rez во всём своём проекте. Я ведь это слово нигде не печатал. Откуда оно взялось?
0
crashc
24 / 24 / 2
Регистрация: 26.07.2009
Сообщений: 414
02.02.2012, 12:08  [ТС] #7
Это- название, той формы, которую я должен вызвать при нажатии кнопки!

Добавлено через 32 минуты
В конце, предыдущего, сообщения должна быть Form1 вместо Form_Rez. Я, просто, обозначил, так форму.
0
ViNew
45 / 34 / 5
Регистрация: 16.07.2011
Сообщений: 73
02.02.2012, 13:27 #8
crashc, Описываю метод вызова второстепенных форм на примере аналогичном коду Delphi по шагам
шаг1: создать вторую форму
шаг2: с помощью include подключить модуль где объявлен класс второй формы
Например я при создании второй формы дал ей Имя Form2 то класс этой формы будет объявлен
в модуле Form2.h поэтому я пишу #include "Form2.h" в начале модуля Form1.h после слов #pragma once
шаг3: Создаем ссылку на класс Form2 для вызова её методов следующим образом!
PriloForms::Form2 ^F= gcnew Form2();
Где PriloForms- это Имя вашего приложения
Form2 - класс второй формы
F-Имя переменной указателя на класс
gcnew- Специальная утилита для создания класса указанного с права от имени
Form2()- Имя создаваемого класса
Весь этот код можно поместить в какой либо обработчик например в обработчик нажатия на кнопку
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)
{
PriloForms::Form2 ^F= gcnew Form2();
F->Show();

}

шаг4: вызываем любые доступные методы класса
F->Show();// в нашем случае мы открываем вторую форму

Добавлено через 17 минут
Ответ уже был просто я его немного уточнил
1
skaa
Хочу в Исландию
1035 / 834 / 119
Регистрация: 10.11.2010
Сообщений: 1,629
02.02.2012, 19:11 #9
А у меня файл с формой которую надо вызывать называется FormSecondary.h, класс с её описанием называется FormSecondary, поэтому я и добавляю в файл с основной формой строку #include "FormSecondary.h".
Получилось у тебя показать второстепенную форму?
0
ViNew
45 / 34 / 5
Регистрация: 16.07.2011
Сообщений: 73
02.02.2012, 19:28 #10
skaa, Да получилось, я этим способом еще в delphi пользовался!

Добавлено через 5 минут
skaa, Дело в том что я и ты! знаем куда что писать а новички то не знают им надо все по полочкам расставить.
Я раньше сам читал книгу а видел фигу потому что автор книги решил что некоторые моменты можно и не описывать.Сколько потом я сидел над его кодом разбирая каждую строчку! пока какой нибудь умный человек не подскажет мне что всего то надо добавить пару строк и все заработает как и задумал автор книги!
0
crashc
24 / 24 / 2
Регистрация: 26.07.2009
Сообщений: 414
03.02.2012, 16:10  [ТС] #11
Только у меня, ничего, не вышло!

Добавлено через 2 минуты
Напишите мне в проекте и вышлите мне этот проект, чтобы я разобрался, что и, где надо писать! Пожалуйста...

Добавлено через 5 часов 52 минуты
Напишите, пожалуйста, мне проект-пример и выложите его мне!
0
skaa
Хочу в Исландию
1035 / 834 / 119
Регистрация: 10.11.2010
Сообщений: 1,629
03.02.2012, 18:56 #12
VS 2008
0
Вложения
Тип файла: zip crashc.zip (2.38 Мб, 21 просмотров)
crashc
24 / 24 / 2
Регистрация: 26.07.2009
Сообщений: 414
03.02.2012, 19:16  [ТС] #13
Можете выложить код, тех файлов, которые важны, при открытие второстепенной формы?

Добавлено через 1 минуту
Я, совсем, разобраться не могу, после CODEGEAR-a.
0
skaa
Хочу в Исландию
1035 / 834 / 119
Регистрация: 10.11.2010
Сообщений: 1,629
03.02.2012, 19:51 #14
Проект открылся?
0
crashc
24 / 24 / 2
Регистрация: 26.07.2009
Сообщений: 414
04.02.2012, 21:37  [ТС] #15
Можете выложить подробный пример листингов? С объяснениями и комментариями, тех местах, где вы сделали изменения!
0
skaa
Хочу в Исландию
1035 / 834 / 119
Регистрация: 10.11.2010
Сообщений: 1,629
04.02.2012, 22:05 #16
Листингов чего? Я ведь тебе весь проект послал. Проект открылся?
0
04.02.2012, 22:05
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.02.2012, 22:05
Привет! Вот еще темы с решениями:

Открытие второй формы через первую
Здравствуйте. Подскажите, как открыть еже существующую форму, нажав на кнопку....

Открытие формы при клике на узел treeView
Всем доброго дня, может кто знает как сделать так, чтобы по нажатию на узел...

Открытие пустой формы при создании проекта
Проблема в следующем. Создаю пустой проект CLR (и в VD 2013, и в 2015...

Элементам главной формы
Опять я задаю дурацкие вопросы ) Есть Form1, при нажатии на кнопку Add на этой...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru