d
den141280Қаң. 17, 2017, 6:17 Т.Ж.

Смена цвета объекта при клике мышью

Qt, QGraphicsItem, QGraphicsScene

Вот проект. При нажатии на квадрат он меняет цвет. Хотелось бы, чтобы он цвет менял, но не двигался. Мне зафиксировать сцену нужно или что сделать? Может кто-нибудь изменить код, чтобы квадрат не двигался, а лишь изменял цвет.

ris2.rar
Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!

41
Evgenii Legotckoi
  • Қаң. 17, 2017, 11:47 Т.Ж.

Нужно удалить setFlag(ItemIsMovable); в коде конструктора MySquare

    d
    • Қаң. 17, 2017, 2:05 Т.Қ.

    Так я так делал. Он теперь перестал обратно возращаться. Pressed=false; что это значит?

      Evgenii Legotckoi
      • Қаң. 17, 2017, 11:38 Т.Қ.

      Больше на баг похоже в базовом классе QGraphicsItem

      Уберите метод базового класса mousePressEvent, видимо он не возвращает дальше в стек событий event

      void MySquare::mousePressEvent(QGraphicsSceneMouseEvent *event)
      {
          Pressed = true;
          update();
      }
      
      void MySquare::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
      {
          Pressed = false;
          update();
      }
      
        d
        • Қаң. 18, 2017, 1:43 Т.Ж.

        Да так и есть. а допустим мне бы хотелось чтоб когда цвет квадрата изменился, открылось окно с сообщением "Цвет изменен!". это в этой функции через сигнал сделать можно? или выше в условии? а так же можно сделать что элипс менял цвет? почему то не хочет. А так же чтоб например при нажатии квадратика выполнялась кнопка ОК а при нажатии элиппс ВЫХОД можно сделать в том исходнике или другая кнопка другой класс будет и если в это исходнике то в какой функции, немного запутался.? по с равнению с микроконтроллерами тут немного по другому.

        
        QRectF MySquare::boundingRect() const
        {
        return QRectF(0,0,50,50);
        }
        
        
        QRectF MySquare::boundingRect1() const
        {
        return QRectF(50,0,10,50);
        }
        
        void MySquare::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
        {
        QRectF rec = boundingRect();
        //QBrush brush(Qt::blue);
        
        if(Pressed)
        {
        //brush.setColor(Qt::blue);
        painter->setBrush(Qt::blue);
        
        
        }
        if(!Pressed)
        {
        //brush.setColor(Qt::red);
         painter->setBrush(Qt::yellow);
        
        }
        
        painter->drawEllipse(0,100, 100,50);
         painter->fillRect(rec,Qt::yellow);
        
        // painter->drawRect(rec);
        
        
        }
        
        void MySquare::mousePressEvent(QGraphicsSceneMouseEvent *event)
        {
           Pressed= true;
             update();
              //QGraphicsItem::mousePressEvent(event);
        
        
        }
        
        void MySquare::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
        {
            Pressed= false;
            update();
            
        }
        
          Evgenii Legotckoi
          • Қаң. 18, 2017, 6:12 Т.Ж.
          • Жауап шешім ретінде белгіленді.

          Что касается последовательности изменения цвета и т.д. То тут надо соблюдать последовательность отрисовки графических элементов. Например, вот вариант, когда квадрат всегда будет жёлтый, а эллипс будет менять цвет.

          #include "mysquare.h"
          
          #include <QGraphicsSceneMouseEvent>
          
          MySquare::MySquare()
          {
              Pressed=false;
          }
          
          QRectF MySquare::boundingRect() const
          {
              return QRectF(0,0,50,50);
          }
          
          void MySquare::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
          {
              QRectF rec = boundingRect();
          
              if(Pressed)
              {
                  painter->setBrush(Qt::blue);
              }
              if(!Pressed)
              {
                  painter->setBrush(Qt::yellow);
              }
          
              painter->fillRect(rec,Qt::yellow);
              painter->drawEllipse(0,0, 50,50);
          }
          
          void MySquare::mousePressEvent(QGraphicsSceneMouseEvent *event)
          {
              Pressed= true;
              update();
          }
          
          void MySquare::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
          {
              Pressed= false;
              update();
          }
          

          Сообщение можно выслать через сигнал, или с использованием QMessageBox

          Что касается того, чтобы это было две кнопки, то Вы изначально неправильно всё делаете. Кнопка "OK" и кнопка "Выход" - это два разных объекта, а Вы запихали всё в один QGraphicsItem . Вы как минимум нагородите трехэтажный трешак, чтобы просто развести обработку кликов по этим двум разным кнопкам. Поэтому делайте два разных класса QGraphicsItem для этих объектов.

          А вообще, для целей создания кнопок нужно использовать QPushButton , а не городить огород с QGraphicsScene . В конце концов, все кнопки нормально кастомизируются

            d
            • Қаң. 18, 2017, 10:06 Т.Ж.

            Я хотел сделать красивые необычные кнопки.точнее типа пульт управления. с соединением с микроконтроллером. По вашей статье про сервер я уже сделал рабочий пультс кнопками PushButton. Но я хочу рисунок. т.е. управлять нарисованными кнопками. И еще раз уточнить хотел. Значит в ниже функциях можно прописывать свои условия в ней и обязательно ли через сигнал это делать? ну т.е. чтоб кнопка меняла цвет и одновременно выполняла функцию.

            void MySquare::mousePressEvent(QGraphicsSceneMouseEvent *event)
            {
                Pressed= true;
                update();
            }
            
            void MySquare::mouseReleaseEvent(QGraphicsSceneMouseEvent *event)
            {
                Pressed= false;
                update();
            }
            
            И еще вот в этом конструкторе можно именить QRectF на QPointF ?
            QRectF  MySquare::boundingRect() const
            {
            
             return QRectF(0,0,50,50);
            }
            
              Evgenii Legotckoi
              • Қаң. 18, 2017, 11:05 Т.Ж.

              Ваше право, хотите с QGraphicsScene , делайте с QGraphicsScene .

              Моё мнение - делаете не правильно с архитектурной точки зрения, это тоже самое, что гвозди микроскопом забивать. То есть применение инструмента не по назначению. Про кастомизацию я уже сказал, внешний вид кнопок можно кастомизировать через QStyleSheet или отрисовывать через переопределение метода paintEvent() самой QPushButton . Или вообще закинуть на кнопку картинку. В общем что угодно можно сделать.

              Можно вызвать какое-нибудь сообщение при нажатии на кнопку, например так:

              #include <QMessageBox>
              
              /// Какой-то код
              
              void MySquare::mousePressEvent(QGraphicsSceneMouseEvent *event)
              {
                  Pressed= true;
                  QMessageBox::information(nullptr, "Hello", "Кнопка нажата", QMessageBox::Ok);
                  update();
              }
              

              Но это абсолютно не правильное решение, хотя и заработает. Не правильное потому, что вместо nullptr нужно передавать указатель на QWidget, но его в вашем коде брать неоткуда, поскольку MySquare - это QGraphicsItem , а не QWidget , поэтому с точки зрения правильного подхода, нужно кидать сигнал и ловить его уже в классе Dialog , в котором добавлена графическая сцена.

              И еще вот в этом конструкторе можно изменить QRectF на QPointF ?
              QRectF  MySquare::boundingRect() const
              {
              
               return QRectF(0,0,50,50);
              }
              

              А вот здесь очень сильно путаете понятия. Это реализация метода класса, а не конструктор класса. Это достаточно разные понятия. И QRectF на QPointF поменять в данном случае нельзя, поскольку метод boundingRect() взят не с потолка - это переопределённый метод базового класса.

                d
                • Қаң. 19, 2017, 1:40 Т.Ж.

                update(); за что отвечает эта функция? без нее не меняет цвет квадрата.

                  Evgenii Legotckoi
                  • Қаң. 19, 2017, 1:42 Т.Ж.
                  update(); запускает перерисовку графического элемента
                    d
                    • Қаң. 19, 2017, 4:35 Т.Ж.

                    только причем тут она если в условии if уже указан цвет. Ведь при клике мышью по квадрату, функция ниже сработала

                    void MySquare::mousePressEvent(QGraphicsSceneMouseEvent *event)
                    {
                        Pressed= true;
                        update();
                    }
                    
                    у нас Pressed= true; соответсвенно
                    if(Pressed)
                        {
                            painter->setBrush(Qt::blue);
                        }
                    
                    ну даль мне кается логически должно перекрасится.
                      Evgenii Legotckoi
                      • Қаң. 19, 2017, 5:53 Т.Ж.

                      Ну потому, что если не вызвать update() , то метод paint() не сработает. Таков принцип работы QGraphicsItem

                        d
                        • Қаң. 19, 2017, 8:50 Т.Ж.

                        emit form_on(); если находится в dialog.cpp и connect (this, SIGNAL(form_on()), myform, SLOT(show())); тоже то запускается все. но стоит только emit form_on(); перенести в конструктор в mysquare.cpp то C:\Projekt Qt\Echo1\mysquare.cpp:14: ошибка: undefined reference to `MySquare::form_on()' что мне где указать? Просто как можно объявить сигнал в другом файле?

                          Evgenii Legotckoi
                          • Қаң. 19, 2017, 8:55 Т.Ж.

                          Правильно, что компилятор ругается. Вы же сигнал объявили в заголовочном файле Dialog.h и соответственно в классе Dialog . Объявить сигнал нужно точно также в заголовочном файле класса MySquare , соответственно в самом классе MySquare , тогда сигнал можно будет испускать из MySquare .

                            d
                            • Қаң. 19, 2017, 9:14 Т.Ж.
                            C:\Projekt Qt\Echo1\mysquare.cpp:58: ошибка: undefined reference to `MySquare::form_on()'
                            
                              Evgenii Legotckoi
                              • Қаң. 19, 2017, 9:31 Т.Ж.

                              C:\Projekt Qt\Echo1\mysquare.cpp:58: ошибка: undefined reference to `MySquare::form_on()'
                              undefined reference - означает дословно "Неопределённая ссылка". Фактически нет объявления или реализации.

                              emit form_on(); если находится в dialog.cpp и connect (this, SIGNAL(form_on()), myform, SLOT(show())); тоже то запускается все.
                              Этот чётко показывает, что сигнал form_on() объявлен в классе Dialog, там же он и вызывается.

                              Повторяю ещё раз: Нужно объявить сигнал в заголовочном файле MySquare , чтобы сигнал был членом MySquare, тогда и вызывать его можно будет из данного класса.

                              Объявить != emit где-нибудь в коде

                                Evgenii Legotckoi
                                • Қаң. 19, 2017, 9:40 Т.Ж.

                                Так ещё один момент. Я вспомнил, что у Вас объект просто наследован от QGraphicsItem, то есть в нём не будут работать сигналы и слоты изначально.

                                Посмотрите ещё вот эти статьи на эту тему:

                                1. QGraphicsObject - аналог QGraphicsItem только с поддержкой сигналов и слотов.
                                2. И как добавить поддержку сигналов и слотов в QGraphicsItem .

                                Выше сказанное про объявление сигнала в заголовочном файле по-прежнему актуально.

                                  d
                                  • Қаң. 19, 2017, 2:40 Т.Қ.

                                  Да получилось. Если я хочу чтоб еще два элипса появились и каждый элипс будет выполнять свою функцию то мне два класса еще нужно будет сделать?

                                    d
                                    • Қаң. 19, 2017, 3:26 Т.Қ.

                                    при создании двух объектов на одной сцене.программа аварийно закрывается. пробую создать два сценны.

                                      Evgenii Legotckoi
                                      • Қаң. 19, 2017, 10:49 Т.Қ.

                                      Всё зависит от функционала. В ряде случаях можно и одним классом обойтись.

                                        Evgenii Legotckoi
                                        • Қаң. 19, 2017, 10:52 Т.Қ.

                                        А вот это уже плохое решение. Если у Вас будет 1000 графических объектов, то будете делать 1000 графических сцен? Ищите ошибку.

                                          d
                                          • Қаң. 20, 2017, 8:23 Т.Ж.

                                          Хочу в graphicsView поставить картинку в виде телефона. и сделать чтоб кнопка нажималась. она нажимается в отладчике на МинГв32 и даже выполняет свою функцию. но вот стоит только перенести приложение на андроид, картинки нет. только элементы кнопок то что я указал в коде. добавлял через стиль-шит border-image: url(:/new/prefix1/siga1.gif); в самом graphicsView. в коде ничего не указывал. рисунок GIF и jpg пробовал.

                                            Evgenii Legotckoi
                                            • Қаң. 20, 2017, 11:01 Т.Ж.

                                            Под андроид надо писать на QML

                                              d
                                              • Қаң. 20, 2017, 2:41 Т.Қ.

                                              А вообще как указать в коде чтоб добавить картинку из ресурса? в void MySquare::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)

                                                Evgenii Legotckoi
                                                • Қаң. 20, 2017, 11:27 Т.Қ.

                                                Ну вот это уже более конкретный вопрос.

                                                Это делается следующим образом:

                                                QRectF MySquare::boundingRect() const
                                                {
                                                    return QRectF(0,0,50,50);
                                                }
                                                
                                                void MySquare::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget)
                                                {
                                                    painter->drawImage(QRectF(0,0,50,50), QImage("://images/some_image.jpg"));
                                                }
                                                
                                                  d
                                                  • Қаң. 21, 2017, 5:53 Т.Ж.

                                                  а вот так правильно?

                                                  scene->addPixmap(QPixmap(":/siga.jpg"));//
                                                  
                                                  я добавил.нашел в интернете. теперь попробую ваш код вставить.
                                                    d
                                                    • Қаң. 21, 2017, 6:06 Т.Ж.

                                                    Заработало.

                                                    QPainterPath path (QPointF(210,540));
                                                         path .  lineTo (260,540  );
                                                        path .  lineTo (260,595  );
                                                      path .  lineTo (210,595  );
                                                     path .  lineTo (210,540  );
                                                    
                                                         painter->setBrush(Qt::NoBrush);
                                                         painter->drawPath(path);
                                                    
                                                    
                                                    Тут можно линии цвет менять? И при наложении с другого класса кнопку,она выше этого рисунка или ниже. Так же можно слой устанавливать за ним или пере ним?
                                                      Evgenii Legotckoi
                                                      • Қаң. 21, 2017, 8:25 Т.Ж.

                                                      Можно и так, но путь указан неправильно. Ещё одного слэша не хватает.

                                                        Evgenii Legotckoi
                                                        • Қаң. 21, 2017, 8:27 Т.Ж.

                                                        Понятия слоёв внутри QGraphisItem нет. последний отрисованный в методе paint графический элемент будет перекрывать все остальные. Чтобы менять цвет, нужно предварительно устанавливать в painter требуемый цвет Кисти.

                                                          d
                                                          • Қаң. 21, 2017, 12:11 Т.Қ.
                                                          QPainterPath path3(QPointF(122,216));
                                                              path3.cubicTo(122,216, 123,216,125,216);
                                                              path3.cubicTo(125,216, 115,205,106,216);
                                                              path3.cubicTo(106,216, 106,217,106,219);
                                                              path3.cubicTo(106,219, 107,219,109,219);
                                                              path3.cubicTo(109,219, 109,217,109,216);
                                                              path3.cubicTo(109,216, 115,210,122,216);
                                                              painter->setBrush(Qt::red);
                                                              painter->drawPath(path3);
                                                          
                                                          вот например небольшая фигурка. типа замочек. как сделать так чтоб при нажатии одной кнопки он появлялся. при нажатии другой исчезал? интересует как удалить и вернуть path3? может через сигналы и слоты и при этом создать класс ЗАМОЧЕК ?
                                                            Evgenii Legotckoi
                                                            • Қаң. 21, 2017, 1:41 Т.Қ.

                                                            Я так понимаю, что это дело отрисовывается всё в paint методе. Поэтому в вашем случае будет проще кидать сигнал, по которому установится в true/false какая-нибудь переменная, которая будет отвечать за отрисовку замка. И запустить перерисовку через метод update() .
                                                            Соответственно по значению этой переменной либо отрисовывать данный замок, либо не отрисовывать.

                                                              d
                                                              • Қаң. 21, 2017, 2:47 Т.Қ.

                                                              Что то не получается. Он либо нарисован либо нет.

                                                              
                                                              
                                                              #include "dialog.h"
                                                              #include <QDebug>
                                                              #include <QFile>
                                                              #include "mytcpserver.h"
                                                              #include "close.h"
                                                              
                                                              Close::Close(QObject *parent ): QObject(parent), QGraphicsItem()
                                                              {
                                                                 // Pressed  =false;
                                                                    m_player1 = new QMediaPlayer(this);          // Инициализация плеера
                                                                       m_playlist1 = new QMediaPlaylist(m_player1);  // Инициализация плейлиста
                                                              
                                                                        m_player1->setPlaylist(m_playlist1);          // Установка плейлиста в аудио плеер
                                                                        m_playlist1->addMedia(QUrl("qrc:/pik.mp3"));       // Добавление трека в плейлист
                                                                        m_playlist1->setPlaybackMode(QMediaPlaylist::CurrentItemInLoop); // Зацикливание трека
                                                              //
                                                              
                                                              
                                                              }
                                                              
                                                               QRectF Close::boundingRect() const
                                                              {
                                                              
                                                               return QRectF(83,540, 70,70);
                                                              }
                                                              
                                                              
                                                              
                                                              
                                                              void Close::paint(QPainter *painter , const QStyleOptionGraphicsItem *option , QWidget *widget )
                                                              {
                                                              
                                                              
                                                              QPainterPath path (QPointF(83,540));
                                                              
                                                              path .  lineTo (144,547  );
                                                              path .  lineTo ( 154,600  );
                                                              path .  lineTo (90,580  );
                                                              
                                                              path .  lineTo (83,540);
                                                               painter->setBrush(Qt::NoBrush);
                                                              painter->drawPath(path);
                                                              
                                                              
                                                              
                                                              
                                                              if(Pressed  )
                                                              {
                                                               m_player1->play();   // Плеер играет
                                                              
                                                              Prez++;
                                                              
                                                              
                                                              
                                                              
                                                              }
                                                              if(!Pressed  )
                                                              {
                                                                m_player1->stop();
                                                              
                                                              
                                                              }
                                                              if (Prez==1)
                                                              {QPainterPath path3(QPointF(122,216));
                                                                 path3.cubicTo(122,216, 123,216,125,216);
                                                                 path3.cubicTo(125,216, 115,205,106,216);
                                                                 path3.cubicTo(106,216, 106,217,106,219);
                                                                 path3.cubicTo(106,219, 107,219,109,219);
                                                                 path3.cubicTo(109,219, 109,217,109,216);
                                                                 path3.cubicTo(109,216, 115,210,122,216);
                                                                 painter->setBrush(Qt::red);
                                                              painter->drawPath(path3);
                                                              }
                                                              if (Prez>=2||Prez==0) Prez==0;
                                                              
                                                              
                                                              
                                                              
                                                              }
                                                              
                                                              void Close::mousePressEvent (QGraphicsSceneMouseEvent *event    )
                                                              { emit  close_on();
                                                              
                                                              
                                                                 Pressed  = true;
                                                              
                                                                 update();
                                                              
                                                              
                                                              
                                                              
                                                              
                                                              }
                                                              
                                                              void Close::mouseReleaseEvent (QGraphicsSceneMouseEvent *event   )
                                                              {
                                                                   Pressed  = false;
                                                                  update();
                                                              
                                                              
                                                              
                                                              }
                                                              
                                                              
                                                              
                                                                d
                                                                • Қаң. 21, 2017, 3:58 Т.Қ.

                                                                или вы имели ввиду сделать класс замок.а в кнопке "Открыть" сделать emit Open(); типа? хорошо было бы пример показали тут.

                                                                  Evgenii Legotckoi
                                                                  • Қаң. 22, 2017, 12:50 Т.Ж.

                                                                  Вот ваши слова:

                                                                  вот например небольшая фигурка. типа замочек. как сделать так чтоб при нажатии одной кнопки он появлялся. при нажатии другой исчезал?
                                                                  Я вам и подсказал так, чтобы он был либо нарисован, либо нет (то есть появлялся и исчезал). А Вы собственно чего именно хотели-то?

                                                                  Чтобы что-то показывать на примере, нужно сначала понимать, что требуется. А с Вашими формулировками вопросов это затруднительно, говорите одно, а потом оказывается, что другое.

                                                                  Но что касается emit Open() , то да, возможно это то, что Вам требуется.

                                                                    d
                                                                    • Қаң. 22, 2017, 5:16 Т.Ж.

                                                                    возможно я не понимаю как так. вот рисунок нарисовался...

                                                                    if (Prez==1)
                                                                    {QPainterPath path3(QPointF(122,216));
                                                                       path3.cubicTo(122,216, 123,216,125,216);
                                                                       path3.cubicTo(125,216, 115,205,106,216);
                                                                       path3.cubicTo(106,216, 106,217,106,219);
                                                                       path3.cubicTo(106,219, 107,219,109,219);
                                                                       path3.cubicTo(109,219, 109,217,109,216);
                                                                       path3.cubicTo(109,216, 115,210,122,216);
                                                                       painter->setBrush(Qt::red);
                                                                    painter->drawPath(path3);
                                                                    }
                                                                    
                                                                    а что нужно написать чтоб рисунок изчез?
                                                                      d
                                                                      • Қаң. 22, 2017, 5:24 Т.Ж.

                                                                      нет так оно и есть. при одной кнопки (класс Опен) он открывается. кнопка класс Клоз. Закрывается. Просто в выше примере не получается так чтоб if (Prez==1) он нарисовался. если поставить например if (Prez>=1) то нарисуется но не при нажатии кнопки а сам по себе. Prez это int. А как чтоб стерся рисунок то что то я не представляю даже. Хорошие примеры у вас к стати. Я с классами раньше не работал,но по вашим примерам разобрался во многом. Ну и подсказкам тоже.

                                                                        Evgenii Legotckoi
                                                                        • Қаң. 22, 2017, 5:25 Т.Ж.

                                                                        Установить значение Prez в значение отличное от единицы и вызвать метод update() .
                                                                        Можете инициировать это через использование сигнала и слота. То есть в слоте установить значение Prez и вызвать update()

                                                                          d
                                                                          • Қаң. 22, 2017, 5:30 Т.Ж.

                                                                          а каким методом можно стереть рисунок?

                                                                            Evgenii Legotckoi
                                                                            • Қаң. 22, 2017, 5:36 Т.Ж.

                                                                            Нет там метода стереть в QGraphicsItem . Есть метод update , который перерисовывает всё изображение в QGraphicsItem .

                                                                              Evgenii Legotckoi
                                                                              • Қаң. 22, 2017, 5:41 Т.Ж.

                                                                              Ну так надо настраивать все эти условия и флаги, выставлять их значения по сигналам. Дело не только в условии, но и то, как Вы настраиваете значение Prez. Если Вы выставляете Prez = 6, то естественно, что при условии Prez == 1 ничего работать не будет.

                                                                              Не получается сразу написать нужный алгоритм, то рисуйте блок схемы на листе бумаги.

                                                                                d
                                                                                • Қаң. 22, 2017, 6:05 Т.Ж.

                                                                                а в Qt можно сделать одну глобальную переменную которрая будет работать во всех сср файла?

                                                                                  Evgenii Legotckoi
                                                                                  • Қаң. 22, 2017, 6:08 Т.Ж.

                                                                                  Конечно можно. Это же C++, но я бы за такое ноги отрывал, если в этом действительно нет веской необходимости, а таких необходимостей реально бывает очень и очень мало.

                                                                                    Пікірлер

                                                                                    Тек рұқсаты бар пайдаланушылар ғана пікір қалдыра алады.
                                                                                    Кіріңіз немесе Тіркеліңіз
                                                                                    Г

                                                                                    C++ - Тест 001. Первая программа и типы данных

                                                                                    • Нәтиже:66ұпай,
                                                                                    • Бағалау ұпайлары-1
                                                                                    t

                                                                                    C++ - Тест 001. Первая программа и типы данных

                                                                                    • Нәтиже:33ұпай,
                                                                                    • Бағалау ұпайлары-10
                                                                                    t

                                                                                    Qt - Тест 001. Сигналы и слоты

                                                                                    • Нәтиже:52ұпай,
                                                                                    • Бағалау ұпайлары-4
                                                                                    Соңғы пікірлер
                                                                                    G
                                                                                    GoattRockҚыр. 3, 2024, 1:50 Т.Қ.
                                                                                    Linux жүйесінде файлдарды қалай көшіруге болады Задумывались когда-нибудь о том, как мы привыкли доверять свои вещи службам грузоперевозок? Сейчас такие услуги стали неотъемлемой частью нашей жизни, особенно когда речь идет о переездах между …
                                                                                    d
                                                                                    dblas5Шілде 5, 2024, 11:02 Т.Ж.
                                                                                    QML - Сабақ 016. SQLite деректер қоры және онымен QML Qt-та жұмыс істеу Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
                                                                                    k
                                                                                    kmssrАқп. 8, 2024, 6:43 Т.Қ.
                                                                                    Qt Linux - Сабақ 001. Linux астында Autorun Qt қолданбасы как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
                                                                                    АК
                                                                                    Анатолий КононенкоАқп. 5, 2024, 1:50 Т.Ж.
                                                                                    Qt WinAPI - Сабақ 007. Qt ішінде ICMP Ping арқылы жұмыс істеу Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
                                                                                    Енді форумда талқылаңыз
                                                                                    Evgenii Legotckoi
                                                                                    Evgenii LegotckoiМаусым 24, 2024, 3:11 Т.Қ.
                                                                                    добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
                                                                                    F
                                                                                    FynjyШілде 22, 2024, 4:15 Т.Ж.
                                                                                    при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …
                                                                                    BlinCT
                                                                                    BlinCTМаусым 25, 2024, 1 Т.Ж.
                                                                                    Нарисовать кривую в qml Всем привет. Имеется Лист листов с тосками, точки получаны интерполяцией Лагранжа. Вопрос, как этими точками нарисовать кривую? ChartView отпадает сразу, в qt6.7 появился новый элемент…
                                                                                    BlinCT
                                                                                    BlinCTМамыр 5, 2024, 5:46 Т.Ж.
                                                                                    Написать свой GraphsView Всем привет. В Qt есть давольно старый обьект дял работы с графиками ChartsView и есть в 6.7 новый но очень сырой и со слабым функционалом GraphsView. По этой причине я хочу написать х…
                                                                                    Evgenii Legotckoi
                                                                                    Evgenii LegotckoiМамыр 2, 2024, 2:07 Т.Қ.
                                                                                    Мобильное приложение на C++Qt и бэкенд к нему на Django Rest Framework Добрый день. По моему мнению - да, но то, что будет касаться вызовов к функционалу Андроида, может создать огромные трудности.

                                                                                    Бізді әлеуметтік желілерде бақылаңыз