Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 14.04.2017
Сообщений: 27

Вывод вычисленных значений в textBox на другую форму

03.03.2022, 07:52. Показов 1710. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Уважаемые знатоки! Помогите, пожалуйста, мне, чайнику, в вопросе реализации кода.
Суть: есть у меня две формы Form 1 и Form 2. На форме 1 - три текст-бокса для ввода значений (высота, радиус и плотность), а также 2 чек-бокса (для выбора метода расчетом - объём и масса) и кнопка. На форме 2 - два текст-бокса для вывода в них результатов вычислений (т.е. если пользователь выберет чекбокс - рассчитать объём, то значение объёма выводится в текстбокс1, если выберет рассчитать массу - то в текстбокс2). Как должно работать приложение: пользователь на форме1 вводит высоту, радиус и плотность в текстбоксы, выбирает метод расчета (например сразу ставит 2 галочки) и нажимает на кнопку Рассчитать. Результат расчетов должен сохранится (не сразу открывать форму2 с результатами), пользователь сам открывает форму2 из пункта меню и получает на экран выведенные в текстбоксы результаты.
Что я сделала: попыталась сделать вывод только рассчитанного объема на другую форму, и оно сработало. В конструкторе формы2 я прописала:
C#
1
2
3
4
5
public Form2(double V)
{
InitializeComponent();
textBox1.Text = V.ToString("0.00");
}
На форме1:
C#
1
2
3
Form2 f2 = new Form2 (V);
f2.Show(this);
 }
Объём то считается и выводится на другую форму, а вот с массой проблема. Пробовала сделать так:
C#
1
2
3
4
5
6
7
public Form2(double V, double M)
        {
             InitializeComponent();
            textBox1.Text = V.ToString("0.00");
            textBox2.Text = M.ToString("0.00");
 
        }
И на форме1 для вывода массы:
C#
1
2
Form2 f2 = new Form2(M);
                f2.Show(this);
Но оно во-первых не срабатывает и начинает ругаться на форму2 (ошибка: Отсутствует аргумент, соответствующий требуемому формальному параметру "M" из "Form2.Form2(double, double)". Работает вывод только обьема (V). Как обеспечить вывод двух значений на другую форму?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.03.2022, 07:52
Ответы с готовыми решениями:

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

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

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

6
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
03.03.2022, 09:49
Лучший ответ Сообщение было отмечено Lyrics как решение

Решение

Lyrics, Добавьте переменную (int numCheck) для хранения выбора чекбоксов, 0 - если выбран первый, 1 - если второй.
потом в конструктор формы передавайте в зависимости от выбранного
C#
1
Form2 f2 = new Form2 (V, numCheck);
или
C#
1
Form2 f2 = new Form2(M, numCheck);
и в форме 2
C#
1
2
3
4
5
6
7
8
9
10
11
12
        public Form2(double Result, numCheck)
        {
             InitializeComponent();
             if(numCheck == 0)
             {
                 textBox1.Text = Result.ToString("0.00");
             }
             else
             {     
                 textBox2.Text = Result.ToString("0.00");
             }
        }
1
0 / 0 / 0
Регистрация: 14.04.2017
Сообщений: 27
04.03.2022, 04:37  [ТС]
Я правильно понимаю, для переменной numCheck необходимо переименовать компоненты на форме вместо chekBox1 = numCheck1, вместо checkBox2 = numCheck2?

Добавлено через 31 минуту
Form2 f2 = new Form2 (V, numCheck); - указываю на форме1, подчеркивает красным numCheck и выдает ошибку "Имя "numCheck" не существует в текущем контексте."

Добавлено через 19 минут
Все, разобралась. Большое спасибо!
0
0 / 0 / 0
Регистрация: 14.04.2017
Сообщений: 27
10.03.2022, 07:03  [ТС]
Метод хранения чекбоксов работает и ответы выводит, но единственное, не совсем корректно. Необходимо, чтобы при нажатии кнопки на форме1 результаты расчетов сохранялись и записывались в форму2 (форма2 не должна открываться при нажатии на кнопку), форму2 мы открываем сами через меню. Код формы2 (где должны отображаться ответы):
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
public WorkForm (double Result, int numCheck)
        {
            InitializeComponent();
            if (numCheck == 0)
            {
                ResultVolume.Text = Result.ToString("0.00");
            }
            else
            {
                ResultMass.Text = Result.ToString("0.00");
            }
 
        }
Код формы1:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
private void button1_Click(object sender, EventArgs e)
            
        {
            h = int.Parse(height.Text);
            r = int.Parse(radius.Text);
            d = int.Parse(destiny.Text);
            if (volume.Checked == true)
            {
                V = Math.PI * Math.Pow(r, 2) * h;
                V = Math.Round(V, 1);
                WorkForm f2 = new WorkForm(V, 0); //выводим результат объёма
                f2.Show();
 
            }
 
            if (mass.Checked == true)
            {
                M = V * d;
                M = Math.Round(M, 1);
                WorkForm f2 = new WorkForm(M, 1); // выводим результат массы 
                f2.ShowDialog();
            }
Если убрать строчки f2.ShowDialog() то вообще ничего не считает и при открытии формы ответов нет, текстбоксы пустые. Если оставить эту строчку, то при выборе, например, двух чекбоксов сразу и нажатии на кнопку открывается форма2 сначала с расчетом объема цилиндра (V), закрываешь эту форму и тут же открывается снова эта форма, но уже с расчетом массы. Понятное дело, что не туда прописала в коде формы1 или даже вообще не верно прописала, но нужно чтоб форма не открывалась сразу. Не могу догнать
0
0 / 0 / 0
Регистрация: 14.04.2017
Сообщений: 27
10.03.2022, 08:34  [ТС]
Приложу, пожалуй, на всякий, архив.
[ATTACH]
1327071
[/ATTACH]
Вложения
Тип файла: rar Cylinder.rar (53.7 Кб, 6 просмотров)
0
2810 / 1679 / 885
Регистрация: 14.04.2015
Сообщений: 5,723
10.03.2022, 12:36
Лучший ответ Сообщение было отмечено Lyrics как решение

Решение

Lyrics, вот так будет лучше
Вложения
Тип файла: 7z Cylinder.7z (161.1 Кб, 8 просмотров)
1
0 / 0 / 0
Регистрация: 14.04.2017
Сообщений: 27
10.03.2022, 14:00  [ТС]
Низкий Вам поклон!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
10.03.2022, 14:00
Помогаю со студенческими работами здесь

Возвращение и вывод вычисленных значений в классах
Пишу программу для вычисления корней уравнений и наткнулся на небольшую проблемку. есть класс head и 2 его дочерних: quadratic_equation...

Изменение textbox через другую форму
Вопросов юудет много... Вот первый Всем привет. Я тут новенький. И вот сразу задам вопрос.. Вот есть есть на Form2 TexBox куда...

Перевод информации на другую форму из textBox
Добрый всем день! Подскажите пожалуйста, каким легким способом можно перевести данные из одного textBox (находится в форме №1) в другой...

Передать значение textBox в другую форму
Есть textBox1(логин), мы туда вводим значение (наш логин), и оно должно передаться в другую форму в label1, т.е label1 Должен остаться с...

Отправка данных с TextBox в другую форму
Допустим у меня есть две формы,в первой TextBox в который мне нужно ввести любой текст, и он должен выводить его на label который...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru