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

незнаю как получить даные из фторой формы

18.02.2012, 23:42. Показов 1457. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите пожалуйста нужно из 2 формы передать даные у первую
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
//form 2
 
 
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 int a, b, c, d, m1, m2, m3, m4, m5, m6, x;
                 sda=10;
                 a = Convert::ToInt32(textBox1->Text);
                 b = Convert::ToInt32(textBox2->Text);
                 c = Convert::ToInt32(textBox3->Text);
                 d = Convert::ToInt32(textBox4->Text);
                 m1 = Convert::ToInt32(textBox5->Text);
                 m2 = Convert::ToInt32(textBox6->Text);
                 m3 = Convert::ToInt32(textBox7->Text);
                 m4 = Convert::ToInt32(textBox8->Text);
                 m5 = Convert::ToInt32(textBox9->Text);
                 m6 = Convert::ToInt32(textBox10->Text);
                 x = Convert::ToInt32(textBox11->Text);
 
                 this->Close();
 
//form1
 
private: System::Void dialogToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
             Func ^form2 = gcnew Func();
                  form2->ShowDialog();
                 // визываю форму 2
 Комментарий модератора 
Код выделяем тегами!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.02.2012, 23:42
Ответы с готовыми решениями:

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

Как получить даные из интернета?
Допустим у меня на облачном хранилище есть текстовый документ. В этом документе записан ключ. Можно ли с помощью C# этот ключ прочесть и...

Как в FormCollection collection во вьюхе занести даные, которые не вводятся с формы
Например, есть строготипизированое представление @model Blog.Models.Comment @{ ViewBag.Title = "AddComment"; ...

13
Просто хороший человек
 Аватар для sannee
392 / 182 / 24
Регистрация: 26.04.2011
Сообщений: 434
18.02.2012, 23:52
1.создайте статический публичный класс
2. обьявите статические публичные переменные.
3. запишите ваши значения в статические переменные статического класса
4. Считайте из этих переменных значения (либо можете их уже использовать)
2
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
18.02.2012, 23:58  [ТС]
а можно както попроще например через глобальную переменуюили ищо както??
0
Просто хороший человек
 Аватар для sannee
392 / 182 / 24
Регистрация: 26.04.2011
Сообщений: 434
19.02.2012, 00:19
Можно.
Пример:
в форме 2 глобальная переменная
C++
1
    public:  int s=0;
в форме 1:

C++
1
2
3
4
5
6
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 Form2 ^f = gcnew  Form2();
                 f->Show();
                 f->s=10;
                 MessageBox::Show(f->s.ToString());
             }
Добавлено через 1 минуту
вывод будет 10.
1
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
19.02.2012, 00:38  [ТС]
получается что я не успеваю водить даные в textbox во второй форме оно уже выводит переменую через
MessageBox. а мне нужно с етими перемеными делать арифметические операции в первой форме
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
19.02.2012, 01:48
misha1737, как вариант попробуйте посмотреть:
https://www.cyberforum.ru/cpp-... 40020.html
1
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
19.02.2012, 02:10  [ТС]
нет ето не то там связка 2 форм а мне нужно научится с одной формы передавать числа во вторую

Добавлено через 11 минут
может можна както через стек или я гдето читал в интернете что можна обявить глобальную переменую и она будет видна во всех формах приложения
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
19.02.2012, 03:47
Цитата Сообщение от misha1737 Посмотреть сообщение
мне нужно научится с одной формы передавать
Там, именно об этом - 3 варианта. 2 - похожих.
Вам подойдёт вариант подписки из Form1 на событие Button_Click в Form2. Идея в том, что, поскольку из Form1 форма Form2 видна (в форме Form1 есть строчка #include "Form1.h") она сама может забрать необходимые ей данные, то-ли прямо из контролов Form2 то ли из ее контейнера (сложнее). Для того, что бы дать ей понять, что пора "забирать" нужно её об этом, просто, оповестить.
В предложенном варианте, когда Ваши текстбоксы заполнены Вы нажимаете на кнопку с надписью, скажем, "Передать в Form1" на форме Form2, форма Form1, получает сигнал наступления события button1_Click формы Form2 и вызывает свою функцию обработчик которая и забирает данные.
Прочтите. Там достаточно подробно изложено. Если, что конкретно будет не ясно, - спрашивайте, - отвечу. Может, позже или завтра. А сейчас - Кличко!

Добавлено через 1 час 29 минут
Цитата Сообщение от IGPIGP Посмотреть сообщение
#include "Form1.h
Ошибочка, читать - #include "Form2.h
Кличко, победил! Облегчение есть, остальное - смур.
1
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
19.02.2012, 14:16  [ТС]
немогу разобратся никак с етими формами я в етом деле не очень мне нужно перенести даные из 2 формы textboxa во первую форму
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
19.02.2012, 14:36
Цитата Сообщение от IGPIGP Посмотреть сообщение
попробуйте посмотреть:
Связка двух форм
Создайте новый проект, в нём 2 формы и по-экспериментируйте. Что не получается, - говорите.
1
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
19.02.2012, 14:57  [ТС]
вот первая форма вызиваю вторую
C++
1
2
3
private: System::Void dialogToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
             Func ^f = gcnew Func();
                  f->Show();
вторая форма ввожу даные в textbox
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
pragma endregion
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                 
                 int a, b, c, d, m1, m2, m3, m4, m5, m6, x;
                
                 a = Convert::ToInt32(textBox1->Text);
                 b = Convert::ToInt32(textBox2->Text);
                 c = Convert::ToInt32(textBox3->Text);
                 d = Convert::ToInt32(textBox4->Text);
                 m1 = Convert::ToInt32(textBox5->Text);
                 m2 = Convert::ToInt32(textBox6->Text);
                 m3 = Convert::ToInt32(textBox7->Text);
                 m4 = Convert::ToInt32(textBox8->Text);
                 m5 = Convert::ToInt32(textBox9->Text);
                 m6 = Convert::ToInt32(textBox10->Text);
                 x = Convert::ToInt32(textBox11->Text);
                 this->Close();
 Комментарий модератора 
Используйте теги форматирования кода!

все даные мне нужно перенести в форму 1
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9005 / 4706 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
19.02.2012, 15:57
misha1737, Вам нужно попробовать создать отдельный проект, в нём 2 простые формы и попробовать, как это работает...
Вот еще вариант - дикий, но простой, и описан вроде подробно:
1.Создаем проект, называем F1AndF2
2. Добавляем к проекту prj->F1AndF2->ADD->GUI->Windows Forms новую форму и называем F2
3. В начале Form1.h в строке после #pragma once пишем #include F2.h
4. В конце объявлений файла Form1.h (перед #pragma region Windows Form Designer generated code)
объявляем
private:
C++
1
2
3
F1AndF2::F2^ ch1;
    static System::Windows::Forms::Timer^ myTimer = gcnew System::Windows::Forms::Timer;
    static bool exitFlag = false;//здесь не использовано, но по идее нужно конечно, но это др. вопр. кода и так дост.
5. В функции
System::Void button1_Click(...) //для Form1 пишем

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
    if(ch1){         
 this->ch1->Close();
}
this->ch1=gcnew F2();
this->AddOwnedForm( ch1);
this->ch1->Show(this);//здесь кстати в ch1 (экземпляр F2) передается ук-ль на родителя - работающий экземпляр F1
myTimer->Interval = 5000;
myTimer->Start();
       while ( exitFlag == false )//среднее м-ду win и unix (message<->state variable) (прикол конешно)
      {
          if(ch1->hru){
              this->textBox1->Text=this->ch1->textBox1->Text;
this->ch1->hru=false;
          }
         // Processes all the events in the queue.
         Application::DoEvents();
      }
Теперь о форме F2 и файле F2.h:
6. Заводим textBox1 и button1
7. В конце объявлений файла Form2.h (перед #pragma region Windows Form Designer generated code)
объявляем
C++
1
public: static bool hru=false;
8. В функции
C++
1
2
System::Void button1_Click(...)  //для Form2 пишем :
 hru=true;
1
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
23.02.2012, 18:00  [ТС]
всем спасибо за помощь я нашол решение
во второй форме обявляэм переменую
public:
/// <summary>
static int a=0,
...
а во первой форме вызываем
fa=Func::a;
0
Эксперт .NET
 Аватар для Casper-SC
4434 / 2094 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
25.02.2012, 03:42
Цитата Сообщение от misha1737 Посмотреть сообщение
всем спасибо за помощь я нашол решение
во второй форме обявляэм переменую
public:
/// <summary>
static int a=0,
...
а во первой форме вызываем
fa=Func::a;
Поздравляю. Ты нарушил один из принципов ООП. Создай метод, из него меняй значение переменной (или свойство). Просто подозреваю в реале ты не тупо 1 переменную типа int будешь менять таким образом. Да ещё и static переменная, тоесть один экземпляр на приложение... Странно.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.02.2012, 03:42
Помогаю со студенческими работами здесь

Проблемы с компом, незнаю почему, хочу апнуть, незнаю как
Мой компьютер на данный момент: Мамка: H-alpinia-rs780l-uatx-101 Проц: AMD Athlon(tm) II x3 440 Processor 3.00 GHz Оперативка: 4...

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

Получить даные из MySQL в массив
Суть вопроса такова: Юзаю график morrisjs залил график все чотко. Только понятное дело что данные там статические. Как залить даные из...

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

Получить даные из БД без релоада
Ребят у меня есть страница с чекбоксами. Есть 2 пользователя. Они оба находятся на странице с чекбоксами. Как сделать так, что бы один...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru