QT6.2关于坐标显示

测试一下QT的子窗口按钮坐标基准问题

第一个button的设置代码

	 ui->setupUi(this);
    //创建一个按钮,作为当前窗口的子控件
    QPushButton* btnA = new QPushButton(this);
    btnA-> move(10,12);
    btnA->setFixedSize(200,200);

第二个button的设置代码

	 //创建第2个按钮
    QPushButton* btnB = new QPushButton(this);
    btnB-> move(10,12);
    btnB->setFixedSize(150,150);

第三个button的设置

	 //创建第3个按钮    
    QPushButton* btnC = new QPushButton(this);
    btnC-> move(10,12);
    btnC->setFixedSize(70,80);
结果

QT6.2关于坐标显示_第1张图片因为指针都指向this

= new QPushButton(this);

所以都以mainwindow的左上角为原点,停在(10,12)坐标位置处

改变第三个button坐标为:

    btnC-> move(20,12);
结果

QT6.2关于坐标显示_第2张图片同样是基于mainwindow原点的坐标定位

改变buttonC的指针为(指向B):

QPushButton* btnC = new QPushButton(btnB);
结果为

QT6.2关于坐标显示_第3张图片此时C以B的左上角为坐标原点。

完整代码

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include //qt中按钮类的名字

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //创建一个按钮,作为当前窗口的子控件
    QPushButton* btnA = new QPushButton(this);
    //移动按钮位置
    btnA-> move(10,12);
    //给按钮设置固定大小
    btnA->setFixedSize(200,200);

    //创建第2个按钮
    QPushButton* btnB = new QPushButton(this);
    btnB-> move(10,12);
    btnB->setFixedSize(150,150);

    //创建第3个按钮
    QPushButton* btnC = new QPushButton(btnB);
    btnC-> move(20,12);
    btnC->setFixedSize(70,80);
}

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

你可能感兴趣的:(qt5,c++)