QT窗口+标签布局自动调整以自动匹配图像大小

时间:2016-01-25 15:14:28

标签: c++ qt qt-designer

大家好,我一直试图让QT窗口自动自动调整,但每次尝试总是在某处失败。 我的布局是这样的。

centralWidget->tabWidget->tab#->label

然而,标签会自动调整大小,请注意我已尝试自动调整内容,但这些内容也无法正常工作。 任何帮助将不胜感激,因为这是程序中的一项功能,大多数人都知道Cloud_Commander XDA-DEV PAGE。 QTdesigner的屏幕上限

这是连接到刷新计时器的代码的一部分。

void MainWindow::Load_adb_Image()
{

    QPixmap pixmapObject("capture.png");
    ui.label_31->setPixmap(pixmapObject);
    ui.label_31->setFixedSize(pixmapObject.size());


    if(!pixmapObject)
    {
        QPixmap pixmapObject("nodevice.png");
        ui.label_31->setPixmap(pixmapObject);
         ui.label_31->setFixedSize(pixmapObject.size());
    }

    QFile::remove("capture.png") ;
    //system("del capture.png");
/**
  ofstream log ("log.txt");
   log << "MW Height x Width :"<< this->height()<<"x"<<this->width()<<endl;
   log<<  "CW Height x Width :"<< ui.centralWidget->height()<<"x"<< ui.centralWidget->width()<<endl;
   log<<  "TB Height x Width :"<< ui.tab->height()<<"x"<< ui.tab->width()<<endl;
   log<<  "F8 Height x Width :"<< ui.frame_8->height()<<"x"<< ui.frame_8->width()<<endl;
   log<<  "LB Height x Width :"<< ui.label_31->height()<<"x"<< ui.label_31->width()<<endl;

   if(ui.label_31->height()>this->height())
       this->setFixedHeight(ui.label_31->height()+80+ui.label_31->height()-this->height());
    if(ui.label_31->width()>this->width())
        this->setFixedWidth(ui.label_31->width()+ui.label_31->width()-this->width());

    if(ui.label_31->height()>ui.tabWidget->height())
        ui.tabWidget->setFixedHeight(ui.label_31->height()+80+ui.label_31->height()-ui.tabWidget->height());
     if(ui.label_31->width()>ui.tabWidget->width())
         ui.tabWidget->setFixedWidth(ui.label_31->width()+ui.label_31->width()-ui.tabWidget->width());

     if(ui.label_31->height()>ui.frame_8->height())
         ui.frame_8->setFixedHeight(ui.label_31->height()+80+ui.label_31->height()-ui.frame_8->height());
      if(ui.label_31->width()>ui.frame_8->width())
          ui.frame_8->setFixedWidth(ui.label_31->width()+ui.label_31->width()-ui.frame_8->width());

      if(ui.label_31->height()> ui.centralWidget->height())
           ui.centralWidget->setFixedHeight(ui.label_31->height()+80+ui.label_31->height()- ui.centralWidget->height());
       if(ui.label_31->width()>ui.centralWidget->width())
          ui.centralWidget->setFixedWidth(ui.label_31->width()+ui.label_31->width()-ui.centralWidget->width());

       if(ui.label_31->height()> ui.tab_3->height())
           ui.tab_3->setFixedHeight(ui.label_31->height()+80+ui.label_31->height()-ui.tab_3->height());
        if(ui.label_31->width()>ui.centralWidget->width())
          ui.tab_3->setFixedWidth(ui.label_31->width()+ui.label_31->width()-ui.tab_3->width());

**/




}

评论是我的一次尝试。

0 个答案:

没有答案