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

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

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

Author24 — интернет-сервис помощи студентам
помогите пожалуйста нужно из 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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.02.2012, 23:42
Ответы с готовыми решениями:

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

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

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

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

13
Просто хороший человек
391 / 181 / 24
Регистрация: 26.04.2011
Сообщений: 434
18.02.2012, 23:52 2
1.создайте статический публичный класс
2. обьявите статические публичные переменные.
3. запишите ваши значения в статические переменные статического класса
4. Считайте из этих переменных значения (либо можете их уже использовать)
2
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
18.02.2012, 23:58  [ТС] 3
а можно както попроще например через глобальную переменуюили ищо както??
0
Просто хороший человек
391 / 181 / 24
Регистрация: 26.04.2011
Сообщений: 434
19.02.2012, 00:19 4
Можно.
Пример:
в форме 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  [ТС] 5
получается что я не успеваю водить даные в textbox во второй форме оно уже выводит переменую через
MessageBox. а мне нужно с етими перемеными делать арифметические операции в первой форме
0
Комп_Оратор)
Эксперт по математике/физике
8949 / 4703 / 629
Регистрация: 04.12.2011
Сообщений: 13,999
Записей в блоге: 16
19.02.2012, 01:48 6
misha1737, как вариант попробуйте посмотреть:
https://www.cyberforum.ru/cpp-... 40020.html
1
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
19.02.2012, 02:10  [ТС] 7
нет ето не то там связка 2 форм а мне нужно научится с одной формы передавать числа во вторую

Добавлено через 11 минут
может можна както через стек или я гдето читал в интернете что можна обявить глобальную переменую и она будет видна во всех формах приложения
0
Комп_Оратор)
Эксперт по математике/физике
8949 / 4703 / 629
Регистрация: 04.12.2011
Сообщений: 13,999
Записей в блоге: 16
19.02.2012, 03:47 8
Цитата Сообщение от 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  [ТС] 9
немогу разобратся никак с етими формами я в етом деле не очень мне нужно перенести даные из 2 формы textboxa во первую форму
0
Комп_Оратор)
Эксперт по математике/физике
8949 / 4703 / 629
Регистрация: 04.12.2011
Сообщений: 13,999
Записей в блоге: 16
19.02.2012, 14:36 10
Цитата Сообщение от IGPIGP Посмотреть сообщение
попробуйте посмотреть:
Связка двух форм
Создайте новый проект, в нём 2 формы и по-экспериментируйте. Что не получается, - говорите.
1
0 / 0 / 0
Регистрация: 18.02.2012
Сообщений: 16
19.02.2012, 14:57  [ТС] 11
вот первая форма вызиваю вторую
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
Комп_Оратор)
Эксперт по математике/физике
8949 / 4703 / 629
Регистрация: 04.12.2011
Сообщений: 13,999
Записей в блоге: 16
19.02.2012, 15:57 12
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  [ТС] 13
всем спасибо за помощь я нашол решение
во второй форме обявляэм переменую
public:
/// <summary>
static int a=0,
...
а во первой форме вызываем
fa=Func::a;
0
Эксперт .NET
4432 / 2092 / 404
Регистрация: 27.03.2010
Сообщений: 5,657
Записей в блоге: 1
25.02.2012, 03:42 14
Цитата Сообщение от misha1737 Посмотреть сообщение
всем спасибо за помощь я нашол решение
во второй форме обявляэм переменую
public:
/// <summary>
static int a=0,
...
а во первой форме вызываем
fa=Func::a;
Поздравляю. Ты нарушил один из принципов ООП. Создай метод, из него меняй значение переменной (или свойство). Просто подозреваю в реале ты не тупо 1 переменную типа int будешь менять таким образом. Да ещё и static переменная, тоесть один экземпляр на приложение... Странно.
0
25.02.2012, 03:42
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.02.2012, 03:42
Помогаю со студенческими работами здесь

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru