QSizeF 类使用浮点精度定义 2D 对象的大小。 更多...
头: | #include <QSizeF> |
CMake: |
find_package(Qt6 COMPONENTS Core REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
QSizeF (qreal width , qreal height ) | |
QSizeF (const QSize & size ) | |
QSizeF () | |
QSizeF | boundedTo (const QSizeF & otherSize ) const |
QSizeF | expandedTo (const QSizeF & otherSize ) const |
QSizeF | grownBy (QMarginsF margins ) const |
qreal | height () const |
bool | isEmpty () const |
bool | isNull () const |
bool | isValid () const |
qreal & | rheight () |
qreal & | rwidth () |
void | scale (qreal width , qreal height , Qt::AspectRatioMode mode ) |
void | scale (const QSizeF & size , Qt::AspectRatioMode mode ) |
QSizeF | scaled (qreal width , qreal height , Qt::AspectRatioMode mode ) const |
QSizeF | scaled (const QSizeF & s , Qt::AspectRatioMode mode ) const |
void | setHeight (qreal height ) |
void | setWidth (qreal width ) |
QSizeF | shrunkBy (QMarginsF margins ) const |
CGSize | toCGSize () const |
QSize | toSize () const |
void | transpose () |
QSizeF | transposed () const |
qreal | width () const |
QSizeF & | operator*= (qreal factor ) |
QSizeF & | operator+= (const QSizeF & size ) |
QSizeF & | operator-= (const QSizeF & size ) |
QSizeF & | operator/= (qreal divisor ) |
QSizeF | fromCGSize (CGSize size ) |
bool | operator!= (const QSizeF & s1 , const QSizeF & s2 ) |
QSizeF | operator* (const QSizeF & size , qreal factor ) |
QSizeF | operator* (qreal factor , const QSizeF & size ) |
QSizeF | operator+ (const QSizeF & s1 , const QSizeF & s2 ) |
QSizeF | operator- (const QSizeF & s1 , const QSizeF & s2 ) |
QSizeF | operator/ (const QSizeF & size , qreal divisor ) |
QDataStream & | operator<< (QDataStream & stream , const QSizeF & size ) |
bool | operator== (const QSizeF & s1 , const QSizeF & s2 ) |
QDataStream & | operator>> (QDataStream & stream , QSizeF & size ) |
大小的指定是通过 width () 和 height ()。可以在构造函数中设置它和改变使用 setWidth (), setHeight (),或 scale () 函数,或使用算术运算符。也可以直接操纵尺寸通过检索宽度和高度的引用使用 rwidth () 和 rheight () 函数。最后,可以交换宽度和高度使用 transpose () 函数。
isValid
() function determines if a size is valid. A valid size has both width and height greater than or equal to zero. The
isEmpty
() 函数返回
true
if either of the width and height is
less
than (or equal to) zero, while the
isNull
() 函数返回
true
仅当宽度和高度两者为 0 时。
使用 expandedTo () function to retrieve a size which holds the maximum height and width of this size and a given size. Similarly, the boundedTo () 函数返回由此尺寸和给定尺寸保持的最小高度 宽度的尺寸。
The QSizeF class also provides the toSize () function returning a QSize copy of this size, constructed by rounding the width and height to the nearest integers.
QSizeF objects can be streamed as well as compared.
另请参阅 QSize , QPointF ,和 QRectF .
[since 5.14]
QSizeF
QSizeF::
shrunkBy
(
QMarginsF
margins
) const
返回尺寸产生从此尺寸的收缩按 margins .
该函数在 Qt 5.14 引入。
另请参阅 grownBy ().
[since 5.14]
QSizeF
QSizeF::
grownBy
(
QMarginsF
margins
) const
返回尺寸产生自此尺寸的增长按 margins .
该函数在 Qt 5.14 引入。
另请参阅 shrunkBy ().
Constructs a size with the given finite width and height .
Constructs a size with floating point accuracy from the given size .
另请参阅 toSize ().
Constructs an invalid size.
另请参阅 isValid ().
返回尺寸,该尺寸保持最小宽度 高度,及给定 otherSize .
另请参阅 expandedTo () 和 scale ().
返回的尺寸保持此尺寸的最大宽度 高度和给定 otherSize .
[static, since 5.8]
QSizeF
QSizeF::
fromCGSize
(
CGSize
size
)
创建 QRectF from size .
该函数在 Qt 5.8 引入。
另请参阅 toCGSize ().
返回高度。
返回
true
若宽度和高度两者任一 <= 0;否则返回
false
.
返回
true
若宽度和高度两者为 0.0 (忽略正负号);否则返回
false
.
返回
true
if both the width and height are equal to or greater than 0; otherwise returns
false
.
返回高度的引用。
使用引用使直接操纵高度成为可能。例如:
QSizeF size(100, 10.2); size.rheight() += 5.5; // size becomes (100,15.7)
另请参阅 rwidth () 和 setHeight ().
返回宽度的引用。
使用引用使直接操纵宽度成为可能。例如:
QSizeF size(100.3, 10); size.rwidth() += 20.5; // size becomes (120.8,10)
另请参阅 rheight () 和 setWidth ().
把尺寸比例缩放到矩形采用给定 width and height ,根据指定 mode .
范例:
QSizeF t1(10, 12); t1.scale(60, 60, Qt::IgnoreAspectRatio); // t1 is (60, 60) QSizeF t2(10, 12); t2.scale(60, 60, Qt::KeepAspectRatio); // t2 is (50, 60) QSizeF t3(10, 12); t3.scale(60, 60, Qt::KeepAspectRatioByExpanding); // t3 is (60, 72)
另请参阅 setWidth (), setHeight (),和 scaled ().
这是重载函数。
把尺寸比例缩放到矩形采用给定 size ,根据指定 mode .
[since 5.0]
QSizeF
QSizeF::
scaled
(
qreal
width
,
qreal
height
,
Qt::AspectRatioMode
mode
) const
Returns a size scaled to a rectangle with the given width and height ,根据指定 mode .
该函数在 Qt 5.0 引入。
另请参阅 scale ().
[since 5.0]
QSizeF
QSizeF::
scaled
(const
QSizeF
&
s
,
Qt::AspectRatioMode
mode
) const
这是重载函数。
Returns a size scaled to a rectangle with the given size s ,根据指定 mode .
该函数在 Qt 5.0 引入。
Sets the height to the given finite height .
另请参阅 height (), rheight (),和 setWidth ().
Sets the width to the given finite width .
另请参阅 width (), rwidth (),和 setHeight ().
[since 5.8]
CGSize
QSizeF::
toCGSize
() const
创建 CGSize 从 QSizeF .
该函数在 Qt 5.8 引入。
另请参阅 fromCGSize ().
Returns an integer based copy of this size.
Note that the coordinates in the returned size will be rounded to the nearest integer.
另请参阅 QSizeF ().
交换宽度和高度值。
另请参阅 setWidth (), setHeight (),和 transposed ().
[since 5.0]
QSizeF
QSizeF::
transposed
() const
Returns the size with width and height values swapped.
该函数在 Qt 5.0 引入。
另请参阅 transpose ().
返回宽度。
这是重载函数。
Multiplies both the width and height by the given finite factor and returns a reference to the size.
另请参阅 scale ().
添加给定 size to this size and returns a reference to this size. For example:
QSizeF s( 3, 7); QSizeF r(-1, 4); s += r; // s becomes (2,11)
减去给定 size from this size and returns a reference to this size. For example:
QSizeF s( 3, 7); QSizeF r(-1, 4); s -= r; // s becomes (4,3)
这是重载函数。
Divides both the width and height by the given divisor and returns a reference to the size. The divisor must not be either zero or NaN.
另请参阅 scale ().
返回
true
if
s1
and
s2
are sufficiently different; otherwise returns
false
.
警告: This function does not check for strict inequality; instead, it uses a fuzzy comparison to compare the sizes' extents.
这是重载函数。
乘以给定 size by the given finite factor and returns the result.
另请参阅 QSizeF::scale ().
这是重载函数。
乘以给定 size by the given finite factor and returns the result.
Returns the sum of s1 and s2 ;分别相加各分量。
返回 s2 减去 s1 ;分别减去各分量。
这是重载函数。
除以给定 size 通过给定 divisor and returns the result. The divisor must not be either zero or NaN.
另请参阅 QSizeF::scale ().
写入给定 size 到给定 stream 并返回流引用。
另请参阅 序列化 Qt 数据类型 .
返回
true
if
s1
and
s2
are approximately equal; otherwise returns false.
警告: This function does not check for strict equality; instead, it uses a fuzzy comparison to compare the sizes' extents.
另请参阅 qFuzzyCompare .
读取大小从给定 stream 进给定 size 并返回流引用。
另请参阅 序列化 Qt 数据类型 .