Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Hide Grid Widget
Forum Updated to NodeBB v4.3 + New Features

Hide Grid Widget

Scheduled Pinned Locked Moved Unsolved General and Desktop
2 Posts 2 Posters 102 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    shreya_agrawal
    wrote last edited by
    #1

    I hide the gridWidget, but ti is still taking space. I want imageWidget to take full space when state is Qt::Checked. How can I do it?

    void Home::liveViewStateChanged(int state)
    {
        if(state == Qt::Checked) {
            myl.reset(new MyLabel(this)); // IRSPL0092 #490 smart pointer
            myl->setGeometry(myl->geometry().x(),myl->geometry().y(),20,20);
            myl->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
            myl->setObjectName(QString::fromUtf8("label"));
            myl->setAlignment(Qt::AlignCenter);
            ui->verticalLayout_4->addWidget(myl.get());
            connect(this, &Home::setImageSignal, this, &Home::setImage);
            connect(this,&Home::setBlankSignal, this,&Home::setBlank);
            ui->verticalLayout_3->removeWidget(ui->gridWidget);
            ui->gridWidget->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
            ui->gridWidget->hide();
            ui->verticalLayout_3->setStretch(0, 0);
            ui->verticalLayout_3->setStretch(1, 1);
            ui->imageWidget->show();
        } else {
            disconnect(this, &Home::setImageSignal, this, &Home::setImage);
            disconnect(this,&Home::setBlankSignal, this,&Home::setBlank);
            if (myl != nullptr) {
                myl->deleteLater();
                myl.reset(nullptr);
            }
            ui->imageWidget->hide();
            ui->verticalLayout_3->setStretch(0, 70);
            ui->verticalLayout_3->setStretch(1, 30);
            ui->verticalLayout_3->insertWidget(0, ui->gridWidget);
            ui->gridWidget->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
            ui->gridWidget->show();
        }
    }
    
    jsulmJ 1 Reply Last reply
    0
    • S shreya_agrawal

      I hide the gridWidget, but ti is still taking space. I want imageWidget to take full space when state is Qt::Checked. How can I do it?

      void Home::liveViewStateChanged(int state)
      {
          if(state == Qt::Checked) {
              myl.reset(new MyLabel(this)); // IRSPL0092 #490 smart pointer
              myl->setGeometry(myl->geometry().x(),myl->geometry().y(),20,20);
              myl->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
              myl->setObjectName(QString::fromUtf8("label"));
              myl->setAlignment(Qt::AlignCenter);
              ui->verticalLayout_4->addWidget(myl.get());
              connect(this, &Home::setImageSignal, this, &Home::setImage);
              connect(this,&Home::setBlankSignal, this,&Home::setBlank);
              ui->verticalLayout_3->removeWidget(ui->gridWidget);
              ui->gridWidget->setSizePolicy(QSizePolicy::Ignored, QSizePolicy::Ignored);
              ui->gridWidget->hide();
              ui->verticalLayout_3->setStretch(0, 0);
              ui->verticalLayout_3->setStretch(1, 1);
              ui->imageWidget->show();
          } else {
              disconnect(this, &Home::setImageSignal, this, &Home::setImage);
              disconnect(this,&Home::setBlankSignal, this,&Home::setBlank);
              if (myl != nullptr) {
                  myl->deleteLater();
                  myl.reset(nullptr);
              }
              ui->imageWidget->hide();
              ui->verticalLayout_3->setStretch(0, 70);
              ui->verticalLayout_3->setStretch(1, 30);
              ui->verticalLayout_3->insertWidget(0, ui->gridWidget);
              ui->gridWidget->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred);
              ui->gridWidget->show();
          }
      }
      
      jsulmJ Online
      jsulmJ Online
      jsulm
      Lifetime Qt Champion
      wrote last edited by
      #2

      @shreya_agrawal said in Hide Grid Widget:

      How can I do it?

      Remove gridWidget from the layout or change its size to 0

      https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      2

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved