Qt中坐标系统

GUI操作系统都有特定的坐标系统

图形界面程序在坐标系统中进行窗口和部件的定位

定位类型

顶级窗口部件的定位

窗口内部见的定位

窗口部件的大小设置

 

Qt使用统一的坐标系统定位窗口部件的位置和大小

Qt部件类提供成员函数在坐标系统中进行定位

QWidget类提供了窗口部件所需的坐标系统成员函数

坐标系统相关函数

QWidget类中的坐标系统成员函数

x()

y()

width()

height()

geometry()集合信息不包含边框

x(), y(), width(), height()

frameGeometry()

x(),y(),width(),height()

 

geometry()和frameGrometry()中的集合数据必须在show()调用后才有效

#include "widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;

w.resize(300, 200);
w.move(120, 120);
w.show();

qDebug() << "QWidget:";
qDebug() << w.x();
qDebug() << w.y();
qDebug() << w.width();
qDebug() << w.height();


qDebug() << "QWidget::geometry():";
qDebug() << w.geometry().x();
qDebug() << w.geometry().y();
qDebug() << w.geometry().width();
qDebug() << w.geometry().height();


qDebug() << "QWidget::frameGeometry():";
qDebug() << w.frameGeometry().x();
qDebug() << w.frameGeometry().y();
qDebug() << w.frameGeometry().width();
qDebug() << w.frameGeometry().height();

return a.exec();
}

QPushButton组件

QPushButton用于接受用户点击事件

QPushButton能够显示提示性字符串

QPushButton是功能性组件,需要父组件作为容器

QPushButton能够在父组件中进行定位

QWidget w;//生成QWidget对象,顶级组件
QPushButton b(&w);//生成QPushButton对象,其父组建为QWidget

b.setText("Button");//设置显示的字符串
b.move(10, 10);//移动到坐标(10, 10)
b.resize(100, 25);//设置大小width = 100, height = 25
#include "widget.h"
#include <QApplication>

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Widget w;
QPushButton b(&w);

b.setText("Button");
b.move(10, 10);
b.resize(100, 25);



w.resize(300, 200);
w.move(120, 120);
w.show();

qDebug() << "QWidget:";
qDebug() << w.x();
qDebug() << w.y();
qDebug() << w.width();
qDebug() << w.height();


qDebug() << "QWidget::geometry():";
qDebug() << w.geometry().x();
qDebug() << w.geometry().y();
qDebug() << w.geometry().width();
qDebug() << w.geometry().height();


qDebug() << "QWidget::frameGeometry():";
qDebug() << w.frameGeometry().x();
qDebug() << w.frameGeometry().y();
qDebug() << w.frameGeometry().width();
qDebug() << w.frameGeometry().height();

return a.exec();
}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值