Я студент-программист и использую Qt для создания приложения с графическим интерфейсом.Я пытаюсь убедиться, что некоторые флажки установлены, чтобы продолжить.Эти флажки включают или отключают сам групповой блок и являются частью класса QGroupBox.Допустимые комбинации могут быть как одно, так и оба.Проблема, с которой я сталкиваюсь, заключается в получении логического значения (по крайней мере, так, как я думаю) из функции-члена QGroupBox QGroupBox :: setChecked (bool) и использования его для определения, отображать или нет сообщение об ошибке.Я попробовал несколько методов и справочную документацию Qts, надеясь на хороший пример.Поскольку QGroupBox, который я пытаюсь использовать, является членом моего класса пользовательского интерфейса, я попытался создать новый экземпляр QGroupBox и установить для него значения пользовательского интерфейса.Затем;Используя оператор if, выясните, установлены ли флажки или нет.Вот мой код для этого:
QGroupBox activeParticleInjection = ui->groupBoxParticleInjection;
QGroupBox activeFluidInjection = ui->groupBoxFluidInjection;
if (activeParticleInjection::setChecked(false) && activeFluidInjection(false));
{
QMessageBox noInjectionSelectedError;
noInjectionSelectedError.setText("Error: No injection type selected");
noInjectionSelectedError.exec();
}
else
{
transData.particleInjectionActive = activeParticleInjection::setChecked();
transData.fluidInjectionActive = activeFluidInjection::setChecked();
Это не работает;начиная с того, как я пытаюсь передать свойства пользовательского интерфейса в новый экземпляр QGroupBox.Я знаю, что это вопрос относительно общего вопроса, но я попытался передать флажок пользовательского интерфейса непосредственно, и это вызвало еще больше проблем.Я просмотрел документацию, и это привело меня к тому, как я пытался это сделать;без удачиЯ надеялся получить отзывы о лучшем методе обработки QGroupBox.Будучи студентом, иногда трудно увидеть ответ, особенно когда имеешь дело с такими уникальными членами, как те, что собраны в QT.
До изменений я использовал этот метод для построения этого процесса;и я получил ошибки для пути, если мои параметры были установлены.Ошибка компиляции: не найдена соответствующая функция для вызова 'QGroupBox :: isChecked (bool)'
if (ui->groupBoxFluidInjection->isChecked(false) && ui->groupBoxParticleInjection->isChecked(false));
{
QMessageBox noInjectionSelectedError;
noInjectionSelectedError.setText("Error: No injection type selected");
noInjectionSelectedError.exec();
}
else
{
transData.particleInjectionActive = ui->groupBoxParticleInjection->isChecked();
transData.fluidInjectionActive = ui->groupBoxFluidInjection->isChecked();
}
Я использую эти сайты для большей помощи: QGroupBox QCheckBox