qt_screen 的编译问题

Compilation issue with qt_screen

我在 Ubuntu OS 上的台式电脑上安装了 Qt5.5。

编译我的程序时出现以下错误 -

这是我得到的错误

../../work/mainwindow.cpp: In constructor 'MainWindow(QWidget)': 
../../work/mainwindow.cpp:63:31:
error: 'qt_screen' was not declared in this scope ui->stackedWidget-
>resize(qt_screen->deviceWidth(),qt_screeb->deviceHeight());

这是我的代码的一部分

MainWindow::MainWindow(QWidget *parent) : 
QMainWindow(parent),
ui(new Ui::MainWindow)
{
  ui->setipUi(this);
  setWindowFlags(Qt::CustomizeWindowHint);
  ui->stackedWidget->resize(qt_screen->deviceWidth().qt_screen->deviceHeight());
  ui->stackedWidget->setCurrentWidget(ui->stackedWidgetPageMain);

  initPageMain();

  touch=new Touch();
  powerButton=new PowerButton();
  auxButton=new AuxButton();
  usbOtg=new UsbOtg();
  battery=new Battery();
  panel=new Panel();
  lan=new Lan();
  hPattern= new HPattern();
  lodLog=new LodLog();
  record=new Record();
  led=new Led();
  lightsensor=new LightSensor();
}

我错过了什么吗?

顺便说一句,我确定我已经将 Qscreen 包含在其中。

我的代码是否有可能设置错误?

QScreen class 与 Qt4 和 Qt5 相比发生了显着变化,实际上变化如此之大,以至于它被认为是 Qt5 中的新功能。

Qt4 QScreen 有一个名为 QScreen::instance() 的静态方法,它返回一个 QScreen 实例指针。早在 Qt4 中,如果我没记错的话,这个指针是从一个全局变量 qt_screen 中获取的。 所有这一切都已改变,因此只需删除所有访问 qt_screen 的代码并通过正确访问 public API 来修复它。