Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
45 / 6 / 1
Регистрация: 20.08.2012
Сообщений: 200

Создать кнопку на Form2 в Load Form1

15.01.2013, 19:02. Показов 1940. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В стандартном проекте WF в Form1_Load создаем новый Form2
C++
1
2
3
4
5
6
7
8
private: System::Void Form1_Load(System::Object^  sender, System::EventArgs^  e) 
{
     Form^ Form2 = gcnew Form;
     Form2->Show();
  // далее пытаемся создать на Form2 кнопку button1, но неудачно
     System::Windows::Forms::Button^  button1;
     Form2->button1 = (gcnew System::Windows::Forms::Button());
}
Подскажите как это сделать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
15.01.2013, 19:02
Ответы с готовыми решениями:

Из Form1.Load не могу менять Form2.Text
Народ всем доброго часа. Приходилось менять от первой формы, заголовок второй формы. Никак не получается. На VB с этим проблем не было. ...

Как скрыть кнопку на form2, нажав на кнопку которая находится на form1
Как скрыть кнопку на form2, нажав на кнопку которая находится на form1? т.е. нажав на кнопку OpenFrm2, открывается форма Form2, и кнопка...

Выполнение кода при нажатии на кнопку в Form1 и Form2
Visual Basic 6.0 есть форм 1 и форм 2 в каждой форме прописаны определённые действия и в каждой форме есть кнопки Комманд( комманд1 и...

8
0 / 0 / 0
Регистрация: 15.01.2013
Сообщений: 10
15.01.2013, 20:06
Сначала добавь к проекту Form2, а на ней уже создашь кнопку. А для каких целей тебе это нужно?
0
45 / 6 / 1
Регистрация: 20.08.2012
Сообщений: 200
15.01.2013, 21:34  [ТС]
Так ведь я в этой строке уже добавил Form^ Form2 = gcnew Form;
Добавлять мне нужно кодом.
Вообще мне нужно не кнопку, а пикче и затем на нее посадить матрицу чисел, двойной массив интеджер, т.е. файл с фотоматрицы. Это начальная часть программы по обработке изображения.
0
0 / 0 / 0
Регистрация: 15.01.2013
Сообщений: 10
15.01.2013, 21:44
Я думаю так не получится. Где у тебя будет определен класс Form2? Нужно создавать Form2.h.
0
45 / 6 / 1
Регистрация: 20.08.2012
Сообщений: 200
15.01.2013, 23:45  [ТС]
Так ты пробовал?
C++
1
2
     Form^ Form2 = gcnew Form;
     Form2->Show();
Так все работает, только кнопку надо добавить.

ОК. Я не знаю где надо определить класс Form2. Где надо его определять и как?
Как же Form2 появляется без класса?
0
0 / 0 / 0
Регистрация: 15.01.2013
Сообщений: 10
17.01.2013, 13:16
Кстати, мне тут ответили на мой вопрос, дали ссылку, думаю тебе тоже будет интересно посмотреть:
Ответы на 7 самых частых вопросов по WinForms
0
45 / 6 / 1
Регистрация: 20.08.2012
Сообщений: 200
17.01.2013, 13:33  [ТС]
Спасибо. Вот так работает
C++
1
2
3
4
Form^ Form2 = gcnew Form;
Form2->Show();
button1 = (gcnew System::Windows::Forms::Button());
Form2->Controls->Add(button1);
А теперь мне надо вместо кнопки поставить пикче и вывести на нее матрицу чисел.
0
0 / 0 / 0
Регистрация: 15.01.2013
Сообщений: 10
18.01.2013, 10:00
C++
1
2
pictureBox1 = (gcnew System::Windows::Forms:: pictureBox1());
Form2->Controls->Add(pictureBox1);
А потом делаешь с ним все остальное. Но текст будет проще вывести на что нибудь другое, например, richTextBox. Или тебе принципиально пикче?

Тогда создаешь событие Paint для пикче, а для рисования на пикче текста пишешь:
C++
1
e->Graphics->DrawString( "Text", gcnew System:: Drawing::Font( "Times New Roman",12 ), System:: Drawing::Brushes::Color, Point(x,y) );
0
45 / 6 / 1
Регистрация: 20.08.2012
Сообщений: 200
18.01.2013, 13:16  [ТС]
Мне надо матрицу чисел вывести на пикче. Что накое напр JPG? Это три матрицы чисел R G B, а мне хотя бы одну матрицу чисел (это фото) вывести на пикче.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.01.2013, 13:16
Помогаю со студенческими работами здесь

При нажатии на кнопку на одной форме (Form1) выполнить действие на другой (Form2)
Как сделать так чтобы при нажатии на клавишу button на одной форме(Form1) выполнялись действия OnCreate другой формы(Form2) и открывается...

При нажатии кнопки на Form1 программно создать элемент на Form2
Здравствуйте.Можно ли как-нибудь сделать чтобы при нажатии на кнопку на Form1 программно создался элемент на Form2?

Как написать функцию для Буттон1(Которая распол. на Form2) что бы возвращалась к Form1 от Form2
Коллеги подскажите как написать такю кнопку=)) Пробовал oid __fastcall TForm2::Button1Click(TObject *Sender) { Form1->ShowModal(); ...

Через Form1 открывают Form2 там открывается Form3 которая меняет данные в Form1. Но они не меняются
В первой форме Main по нажатию кнопки вызываю другую форму private void Button_AddVetrina(object sender, EventArgs e) { ...

Чем отличается Load Form1 от Form1.Visible = true?
ToolBox размещена на основной форме (Form1). На MouseDown подвешено открытие формы Form2 (Form2.Show vbModal), после закрытия которой...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru