0 / 0 / 0
Регистрация: 15.09.2020
Сообщений: 41

Непонятная проблема c ComboBox QT_Qreator

09.10.2020, 00:49. Показов 2254. Ответов 20
Метки qt (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток, нужна ваша помощь, выполняю лабу по программированию, делаю логическую программу, в которой 3 комбобокса, в 2 крайних значения TRUE и FALSE, в центральном комбобоксе логические операции, при выборе логической операции, в зависимости от значений(TRUE или FALSE) окно программы красится либо в красный либо в зеленый цвет, думаю вы догадались, что TRUE это 1 а False это 0, а цвета красный и зеленый символизируют что получится в результате выполнения программы либо 0 либо 1 соответственно, но не в этом проблема.
Вся соль в том, что когда в центральном комбобоксе нуту ничего(не записаны логические операции), то программа при запуске отображает все верно, т.е 3 комбобокса, но стоит мне только добавить хоть 1 элемент в комбобокс лог. операций(хотя бы 1 символ), то начинается бред, правый комбобокс с TRUE и FALSE просто исчезает при запуске проги



вот код программы:

1.mainwindow.cpp




C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#include "mainwindow.h"
#include "ui_mainwindow.h"
 
MainWindow::MainWindow(QWidget *parent)
  : QMainWindow(parent)
  , ui(new Ui::MainWindow)
{
  ui->setupUi(this);
  check();
}
 
MainWindow::~MainWindow()
{
  delete ui;
}
 
 
void MainWindow:: check(){
  ui->left_b->show();
  bool left_b = ui->left_b->currentIndex();
  bool right_b = ui->right_b->currentIndex();
 
  bool result = false;
  int operation = ui->operation_b->currentIndex();
 
 
  switch (operation) {
 
  case 1:
       result = left_b && right_b;
        break;
  case 2:
       result = left_b || right_b;
        break;
  case 6:
       result = (left_b && !right_b) || (!left_b && right_b);
        break;
  case 3:
       result = !(left_b && right_b);
        break;
  case 4:
       result = !(left_b || right_b);
        break;
  case 5:
       result = (left_b || !right_b) && (!left_b || right_b);
        break;
  case 0:
       ui->right_b->hide();
       result = !left_b;
        break;
    }
 
    QPalette p = this->palette();
    p.setColor(QPalette::Window, (result ? Qt::green : Qt::red));
    this->setPalette(p);
 
   }
 
 
void MainWindow::on_left_b_currentIndexChanged(int index)
{
  Q_UNUSED(index)
  check();
}
 
void MainWindow::on_right_b_currentIndexChanged(int index)
{
  Q_UNUSED(index)
  check();
}
 
void MainWindow::on_operation_b_currentIndexChanged(int index)
{
  Q_UNUSED(index)
  check();
}
2.main.cpp

C++
1
2
3
4
5
6
7
8
9
10
11
#include "mainwindow.h"
 
#include <QApplication>
 
int main(int argc, char *argv[])
{
  QApplication a(argc, argv);
  MainWindow w;
  w.show();
  return a.exec();
}
3.mainwindow.h

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
 
#include <QMainWindow>
#include <QWidget>
 
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
 
class MainWindow : public QMainWindow
{
  Q_OBJECT
  void check();
 
public:
  MainWindow(QWidget *parent = nullptr);
  ~MainWindow();
 
private slots:
  void on_left_b_currentIndexChanged(int index);
 
  void on_right_b_currentIndexChanged(int index);
 
  void on_operation_b_currentIndexChanged(int index);
 
private:
  Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
ОБОЗНАЧЕНИЯ ОБЪЕКТОВ:

1.left_b //ЛЕВЫЙ КОМБОБОКС С TRUE И FALSE
2.right_b //ПРАВЫЙ КОМБОБОКС С TRUE И FALSE
3.operation_b //ЦЕНТРАЛЬНЫЙ КОМБОБОКС С ЛОГИЧЕСКИМИ ОПЕРАЦИЯМИ



ОГРОМНОЕ ВАМ СПАСИБО!!!
Миниатюры
Непонятная проблема c ComboBox QT_Qreator   Непонятная проблема c ComboBox QT_Qreator  
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.10.2020, 00:49
Ответы с готовыми решениями:

Непонятная проблема с запросом
Не могу никак понять, что не так вот с этим QSqlQuery qry3; QString Name; qry3.prepare(&quot;SELECT Name, LastName FROM...

Непонятная проблема с сервером
Стоял сервер (6.5.4) на ноутбуке, работал полностью нормально, запускался вручную под неким локальным пользователем (с адм.правами...

Непонятная проблема OpenGL
При отображении сетки с текстурами появляются непонятные линии. Причем изменение сглаживания ничего не меняет. Текстура 64x64. Может кто...

20
Эксперт .NET
 Аватар для insite2012
5548 / 4311 / 1218
Регистрация: 12.10.2013
Сообщений: 12,371
Записей в блоге: 2
09.10.2020, 20:27
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от iSmokeJC Посмотреть сообщение
их разве можно использовать, окромя как в connect() ?
Наверное да, я до них пока не добрался в своем учебнике по С++. Я параллельно изучаю обычный С++ и непосредственно Qt.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.10.2020, 20:27

Непонятная проблема с STM32F415RGT6
Доброго времени суток всем! Задача: прочитать данные с АЦП и записать на карту посредством SPI интерфейса. Проблемы: 1) Обнаружив (не без...

Непонятная проблема с видеокартой
Добрый день, господа. Недавно столкнулся с такой проблемой: комп после запуска игры, спустя пару минут, выдает черный экран с надписью...

Непонятная проблема с принтєром
Доброе время суток! Уважаемые специалисты, прошу вашей помощи! Постоянная проблема с печатью на одном из пользовательских принтеров....

Непонятная проблема с винтом
Помогите разобраться что происходит. Суть дела: Винт SATA на 320 Гб, на неразбитом стояла Виста, снёс, разбил винт с помощью fdisk и...

непонятная проблема с датами
Описываю ситуацию: Есть агент выполяется, на сервере заказчика по расписанию. Раз в неделю в 10 часов утра он создает некий...


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

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Опции темы

Новые блоги и статьи
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru