mikemet Опубликовано 21 сентября, 2015 Жалоба Поделиться Опубликовано 21 сентября, 2015 Всем доброго времени суток. Собственно вопрос исключительно для "чайников". На форме есть три поля и кнопка. Реализуется, например : a + b = c , см рис. При нажатии на кнопку в поле отображается результат "c". Как это будет выглядеть в коде? Нужен код только для реализации действия кнопки и поля результата. Да, и какого типа должно быть поле результата, textBox ? Т.е. не разберусь никак, нажимаем кнопку, идет сложение, а вот как отразить результат в поле? Спасибо. Ссылка на комментарий Поделиться на другие сайты Поделиться
Teddy_Bear Опубликовано 21 сентября, 2015 Жалоба Поделиться Опубликовано 21 сентября, 2015 (изменено) В RAD, в инспекторе объектов закладка "Events" для кнопки находишь событие OnClick. Даблклик. В окне кода появляется процедура OnClick. Внутри пишешь сложение (и вообще что хочешь) и присвоение textBox-у значения. void __fastcall TForm1::Button1Click(TObject *Sender){ try { TextBox1->Text = IntToStr(StrToInt(Edit1->Text) * StrToInt(Edit2->Text)); } catch(...) { ShowMessage("Введены не целые числа."); }} У textBox много свойств разного типа. Но, видимо, требуется свойство text. Его тип string. Изменено 21 сентября, 2015 пользователем Teddy_Bear Ссылка на комментарий Поделиться на другие сайты Поделиться
Shadow TH Опубликовано 21 сентября, 2015 Жалоба Поделиться Опубликовано 21 сентября, 2015 Teddy_Bear немножко не тот пример привёл (пример для C++, а автор просит C#), но в Visual Studio или SharpDevelop принцип примерно такой же: кидаем три текстовых поля и кнопку на форму, затем щёлкаем 2 раза на кнопке - для кнопки будет создан новый метод-обработчик по умолчанию - это обработка щелчка Button1Click, который автоматически подпишется на событие OnClick кнопки button1. После этого мы можем просто написать внутри метода Button1Click нужный код, который будет вызываться при щелчке на кнопке. Допустим имеются 3 текстовых поля: textBox1, textBox2, textBox3. Для кнопки Button1 на C# код будет следующим: void Button1Click(object sender, EventArgs e){ textBox3.Text = (int.Parse(textBox1.Text) + int.Parse(textBox2.Text)).ToString();}Статический метод int.Parse принимает строку из textBox1 и преобразует её в целочисленный тип (int или Int32). Аналогично данный метод преобразует текст из второго поля в число. Затем полученные числа складываются и всё это мы берём в скобки и преобразуем в строку (при помощи метода ToString()).Вообще в C# (в отличие от C++) события являются частью языка. Классы могут содержать события, на которые может быть подписано множество методов. При запуске этого события все подписанные методы автоматически выполняются. На основе событий в C# реализуется взаимодействие пользователя с интерфейсом в оконных приложениях. Ссылка на комментарий Поделиться на другие сайты Поделиться
mikemet Опубликовано 21 сентября, 2015 Автор Жалоба Поделиться Опубликовано 21 сентября, 2015 Да, мне нужен был пример именно для C#. Тем не менее большое спасибо Teddy_Bear и Shadow TH за подробные разъяснения для начинающего, великого программиста... :-)) Вопрос можно закрыть. Ссылка на комментарий Поделиться на другие сайты Поделиться
Teddy_Bear Опубликовано 23 сентября, 2015 Жалоба Поделиться Опубликовано 23 сентября, 2015 Для начинающего программиста я бы подчеркнул важность использования try{ } catch{ }. Оператор catch выполняется, если блок операторов в try завершается ошибкой. Возникает исключение. Обработать его призван блок catch. Пренебрежение этим правилом ведёт к обычным для Си программирования крашем программы. Вообще, программирование - это предупреждение всевозможных ошибок действий пользователя. То есть, кроме представления о том, что должен сделать юзер, надо ещё иметь богатую фантазию того, что пользователь не должен, но может сделать. Эти ситуации программа должна разруливать. То есть программист, естественно. Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти