Перемещение RadioButton в C++


На днях был заказ на очень интересный проект. Необходимо было разработать приложение на C++ (или QT), которое управляет перемещением одного виджета (элемента управления, RadioButton) при помощи других виджетов (элементов управления), а также может запоминать свое состояние в файл и восстанавливать его

Чем же мне показалось интересным задание? Дело в том, что управление перемещением хотя и встречается в задачах рубежного контроля, но это либо изображения, либо геометрические фигуры. А здесь надо управлять элементом управления (извините за тавтологию).

Задача может, конечно, показаться сложной, но на самом деле решается очень просто. Помещаем на форму GroupBox, на него RadioButton (это чтобы было проще работать с координатами, да так и указано в дополнительных условиях задания). Слева на другом GroupBox – два numericUpDown – для координаты по вертикали и горизонтали.

Теперь для этих numericUpDown ставим обработчики события ValueChanged:

private: System::Void numericUpDown1_ValueChanged(System::Object^  sender, System::EventArgs^  e) {
double x = Convert::ToDouble(numericUpDown1->Value);
double y = Convert::ToDouble(numericUpDown2->Value);
radioButton1->Location = Point(x,y);
}
Все очень просто: получаем значение из поля numericUpDown, конвертируем его в double, а затем с помощью Location ставим наш RadioButton на нужное место.

Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.

тегизаметки, си плюс плюс, radiobutton, numericupdown, движение элементов




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




Компьютерная анимация
Урок 3. Добавление Vue в проект и создание приложения
Как написать макрос для CorelDRAW на VBA: введение