QML - 开始时的主窗口位置(屏幕中心) [英] QML - main window position on start (screen center)

查看:15
本文介绍了QML - 开始时的主窗口位置(屏幕中心)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何执行以下操作:我想在开始时在中央屏幕上显示我的主窗口.

How I can do following: I’d like show my main window on start on the center screen.

推荐答案

你需要 setGeometry 在您显示它之前在您的顶级小部件上.我能想到的最简单的方法是通过 <代码>QDesktopWidget.试试下面的例子(创建一个 QPushButton,在不同屏幕上移动小部件时按下它),你就会明白我的意思了:

You'll need to setGeometry on your top-level widget before you show it. The easiest way I can think of to work out what geometry you need is via QDesktopWidget. Try the example below (create a QPushButton, press it while moving the widget around various screens) and you'll see what I mean:

MainWindow::MainWindow(QWidget *parent) :
  QMainWindow(parent),
  ui(new Ui::MainWindow)
{   
  ui->setupUi(this);
  connect(ui->pushButton, SIGNAL(released()), this, SLOT(ButtonPressed()));
}

MainWindow::~MainWindow()
{
  delete ui;
}

void MainWindow::ButtonPressed()
{
  qDebug() << QApplication::desktop()->screenCount();
  qDebug() << QApplication::desktop()->screenNumber();
  qDebug() << QApplication::desktop()->screenGeometry(this);
}

应该相当简单地从那里拿出一个通用版本来计算用户的中心屏幕(如果它存在的话).

Should be reasonably simple from there to come up with a generic version that works out a user's center screen (if it exists).

这篇关于QML - 开始时的主窗口位置(屏幕中心)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆