Форум программистов, компьютерный форум, киберфорум
C++ Qt
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.82/55: Рейтинг темы: голосов - 55, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 16.02.2015
Сообщений: 21

Присвоить значение переменной по нажатию кнопки

02.03.2018, 22:50. Показов 11271. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток!
Помогите, будьте так добры. Пишу некую форму-опросник вида:
"вопрос1 - 4 радиокнопки"
"вопрос2 - 4 радиокнопки"
Кнопки в группах, с этим всё окей
Каждая кнопка должна иметь свой "вес" (пусть будет 1, 2, 3 и 4 для первой, второй, третьей и четвертой кнопок, соответственно)
Вопрос - как можно при нажатии кнопки писать числовое значение в переменную (тот самый "вес" кнопки)?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.03.2018, 22:50
Ответы с готовыми решениями:

Типы переменных (как в Qt присвоить значение переменной типа int строке QString?)
Добрый вечер! Возник вот такой вопрос: Как в Qt присвоить значение переменной типа int строке QString? Кусок кода: QString...

Как присвоить переменной по нажатию кнопки значение того что введется в текстбокс?
в общем есть 2 кнопки и 2 текст бокса, нужно чтобы при нажатии на первую введенный текст становился значением переменной, а при нажатии на...

По нажатию клавиши нужно присвоить переменной значение
как сказать компьютеру, что по нажатию клавиши нужно присвоить оператору значение, кароче типа этого: //если нажали на кнопку, то...

24
736 / 703 / 110
Регистрация: 29.05.2015
Сообщений: 4,293
15.06.2018, 15:23
Студворк — интернет-сервис помощи студентам
М... по теме. Присвоить переменной значение по нажатию кнопки можно так:

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
void Widget::press_pbtn_01()
{
    int x = 0;
 
    if(ui->radioButton_1->isChecked()) x = 1;
    if(ui->radioButton_2->isChecked()) x = 2;
    if(ui->radioButton_3->isChecked()) x = 3;
    if(ui->radioButton_4->isChecked()) x = 4;
 
}
Если объектов много, они все засовываются в список вот так:

C++ (Qt)
1
listQRB = findChildren<QRadioButton *>();
и поиск в списке можно осуществить так:

C++ (Qt)
1
2
3
4
5
6
   int x = 0; 
 
    for(int i = 0; i < listQRB.size(); i++)
    {
        if(listQRB.at(i)->isChecked()) x = i;
    }
1
5 / 5 / 1
Регистрация: 05.06.2018
Сообщений: 31
18.06.2018, 10:14
listQRB = findChildren<QRadioButton *>();
Спс, то что нужно работает классно!
0
5 / 5 / 1
Регистрация: 05.06.2018
Сообщений: 31
19.06.2018, 17:13
Пробую теперь применить к своим текстам:
mainwindow.h
C++
1
2
3
4
5
6
7
...
public:
  explicit.......
  ~ MainWi.....
 
QList <QTextEdit *> manytexts;
...
mainwindow.cpp
C++
1
2
3
4
5
6
7
8
9
10
  // повторять сюда из хедера QList <QTex.... наверное уже не надо т.к. паблик?
  for ( int i=1; i < 21; i++ ) {
    QString filename = QApplication::applicationDirPath()+"/textfil"+QString::number(i)+".txt";
    if ( !filename.isEmpty() ) {
      QFile files( filename );
      if ( files.open( QFile::ReadOnly | QFile::Text) ) {
         manytexts.at(i-1)->setText( files.readAll() );
         }
     }
}
... программа неожиданно завершилась. Без "manytexts.at(i-1)->setText( files.readAll() );" работает.
0
736 / 703 / 110
Регистрация: 29.05.2015
Сообщений: 4,293
20.06.2018, 06:24
У тебя что, и ЛайнЭдитов много?
0
5 / 5 / 1
Регистрация: 05.06.2018
Сообщений: 31
20.06.2018, 09:24
Только текстбоксы, но если вдруг, то должна быть возможность "прикрутить" любой допустимый виджет. Как-то давно делал типа базку данных и юзеры просили создать мильён полей ввода. Для очистки всех полей после записи данных в базу, я использовал немалый список в каком-то смысле повторяющихся операторов. Изучая "плюсы" и Qt Creator хотелось бы расковырять эту фишечку и погонять код в примерах.

Добавлено через 6 минут
"QList is implemented as an array of pointers.." - наверное "цепляет" почти всё.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.06.2018, 09:24
Помогаю со студенческими работами здесь

Как изменить значение переменной по нажатию кнопки?
мы создаем такое вот действие по нажатию кнопки: def click(event): но просто так мы не можем менять значения переменных в основной...

Присвоить значение наименьшего элемента массива переменной М1, номер строки, где находится этот элемент, - переменной Т, номер столбца - переменной С
Массив С действительных чисел имеет 5 строк и 11 столбцов. Присвоить значение наименьшего элемента массива переменной М1, номер строки, где...

Как присвоить значение переменной, исходя из значения другой переменной?
Всем привет. Нужна помощь. Есть переменная, например &quot;month&quot; которая может принимать значения от 01 до 12, и переменная...

Как переменной описанной в программе присвоить значение переменной в Conditional Compilation Arguments?
Kak mozhno peremennij opisanoj v programme prisvoit` znachenie peremennoj v Conditional Compilation Arguments??? Eto nado chtoto tipa...

По значению переменной x (названию сезона) присвоить переменной t соответствующее значение и вывести на экран
Дано описание: Type сезон= (зима, весна, лето, осень); Var x: сезон; t: (тепло, жарко, холодно); По значению переменной x (названию...


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

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Новые блоги и статьи
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
Модель здравосохранения 17. Планы на выгорание
anaschu 23.05.2026
Вот конкретная схема реализации: В классе Работник добавить: накопленнаяУсталость — растёт каждый час работы, снижается в перерывы и болезни коэффициентПрезентеизма — снижает продуктивность. . .
Изменение цветов в палитре gif файла aka фавикона
russiannick 23.05.2026
Изменение цветов в палитре gif файла, юзаемого как фавиконка в составе html-файла, помещенная в base64, средствами нативного Java Script, навеянное сном в майский день. Для работы необходим браузер,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru