Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > Windows Forms
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.02.2016, 00:23   #1
svetlanaPopova
Новичок
Джуниор
 
Регистрация: 28.02.2016
Сообщений: 3
По умолчанию switch в visual c++ 2010

Доброго времени суток!!!
Подскажите, пожалуйста, мучаюсь весь день, не могу найти информации никакой. Я сделала форму, на форме 3 текст-бокс, в который вводится число, и еще 1 текст-бокс в который выводится значение синуса, или косинуса, или тангенса. Что именно считать нужно определить радиокнопкой в GroupBox, но у меня проблема, выводится все время только косинус, думаю, что проблема в этой строчке "switch (groupBox1->TabIndex)"
Помогите, пожалуйста, очень срочно и очень нужно, заранее большое спасибо!!!
Код:
groupBox1->TabIndex = 0;
radioButton1->TabIndex = 0;
radioButton2->TabIndex = 1;
radioButton3->TabIndex = 2;
textBox1->Clear();
textBox2->Clear();
textBox3->Clear();

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
		 Single X, Y, Z, M = 0;
bool число1 = Single::TryParse(textBox1->Text,
System::Globalization::NumberStyles::Number,
System::Globalization::NumberFormatInfo::CurrentInfo, X);
bool число2 = Single::TryParse(textBox2->Text,
System::Globalization::NumberStyles::Number,
System::Globalization::NumberFormatInfo::CurrentInfo, Y);
bool число3 = Single::TryParse(textBox3->Text,
System::Globalization::NumberStyles::Number,
System::Globalization::NumberFormatInfo::CurrentInfo, Z);

switch (groupBox1->TabIndex)
{
case 0: M = cos(X); textBox4->Text = String::Format("{0:F5}", M);break;
case 1: M = sin(X); textBox4->Text = String::Format("{0:F5}", M);break;
case 2: M = tan(X); textBox4->Text = String::Format("{0:F5}", M);break;
}
svetlanaPopova вне форума Ответить с цитированием
Старый 28.02.2016, 00:55   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

GroupBox это просто панель для группировки любых элементов, а TabIndex это свойство всех элементов определяющее порядок перехода между ними клавишей TAB.
Вам не нужно его в коде использовать.

Используйте if'ы и свойство Checked радиобаттонов. https://msdn.microsoft.com/en-us/lib...vs.110%29.aspx
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 28.02.2016, 00:56   #3
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

первое GroupBox не имеет отношения к RadioButton.
а уж тем более свойство TabIndex.(оно вообще относится к порядку переключения по табу)

проверяйте RadioButton->Checked.


--------------
блин
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 28.02.2016, 00:59   #4
svetlanaPopova
Новичок
Джуниор
 
Регистрация: 28.02.2016
Сообщений: 3
По умолчанию

а как же сделать проверку в switch?

вот нашла пример в билдере,
там сначала RadioGroup1->ItemIndex = 0;
а потом switch(RadioGroup1->ItemIndex){
и дальше кейсы,

мне просто нужно именно switch сделать
svetlanaPopova вне форума Ответить с цитированием
Старый 28.02.2016, 01:02   #5
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Билдер это не то, и у вас .NET (Windows Forms), а не чистый C++.
Цитата:
а как же сделать проверку в switch?
С самими радиобаттонами вроде никак. Только если создать переменную и присвоить ей значение в if'ах, а потом ее использовать в switch
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 28.02.2016 в 01:07.
Alex11223 вне форума Ответить с цитированием
Старый 28.02.2016, 01:07   #6
svetlanaPopova
Новичок
Джуниор
 
Регистрация: 28.02.2016
Сообщений: 3
По умолчанию

То есть сделать это через switch в принципе невозможно?
svetlanaPopova вне форума Ответить с цитированием
Старый 28.02.2016, 02:31   #7
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

нет, просто делаете через if else.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
visual c++ 2010 hardc0re Visual C++ 3 29.11.2012 21:01
Visual C++ 2010 тесты kineziz Общие вопросы C/C++ 1 03.06.2012 15:02
Visual C++ 2010 sergi Помощь студентам 0 22.05.2012 22:21
Visual Studio 2010 и SharePoint 2010 glinka-82 Общие вопросы .NET 0 21.03.2012 22:37
visual studio 2010>>>Cи? abzas Общие вопросы C/C++ 13 22.09.2011 20:58