QSizeF Class
QSizeF クラスは、浮動小数点精度を使用して 2 次元オブジェクトのサイズを定義します。詳細...
Header: | #include <QSizeF> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
- 継承メンバを含む全メンバ一覧
- QSizeF は絵画クラスの一部です。
パブリック関数
QSizeF() | |
QSizeF(const QSize &size) | |
QSizeF(qreal width, qreal height) | |
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) |
関連する非メンバー
(since 6.8) bool | qFuzzyCompare(const QSizeF &lhs, const QSizeF &rhs) |
(since 6.8) bool | qFuzzyIsNull(const QSizeF &size) |
bool | operator!=(const QSizeF &lhs, const QSizeF &rhs) |
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 &lhs, const QSizeF &rhs) |
QDataStream & | operator>>(QDataStream &stream, QSizeF &size) |
詳細説明
サイズはwidth() とheight() で指定します。サイズはコンストラクタで設定し、setWidth(),setHeight(),scale() 関数や算術演算子を使って変更することができます。また、rwidth() やrheight() 関数で幅や高さの参照を取得することで、サイズを直接操作することもできます。最後に、transpose ()関数を使用して、幅と高さを入れ替えることができる。
isValid() 関数は、サイズが有効かどうかを判定する。有効なサイズは、幅と高さの両方が 0 以上である。isEmpty() 関数は、幅と高さのどちらかが 0 より小さい(または等しい)場合にtrue
を返し、isNull() 関数は、幅と高さの両方が 0 の場合にのみtrue
を返す。
expandedTo() 関数を使用して、このサイズと指定されたサイズの最大の高さと幅を保持するサイズを取得する。同様に、boundedTo() 関数は、このサイズと与えられたサイズの最小の高さと幅を保持するサイズを返します。
QSizeF クラスにはtoSize() 関数もあります。この関数は、幅と高さを最も近い整数に丸めて作成した、このサイズのQSize コピーを返します。
QSizeF オブジェクトは、比較だけでなくストリームすることもできます。
QSize,QPointF,QRectFも参照してください 。
メンバ関数ドキュメント
[constexpr noexcept]
QSizeF QSizeF::grownBy(QMarginsF margins) const
このサイズをmargins だけ大きくしたサイズを返す。
shrunkBy()も参照 。
[constexpr noexcept]
QSizeF QSizeF::shrunkBy(QMarginsF margins) const
このサイズをmargins だけ縮小した結果を返す。
grownBy()も参照 。
[constexpr noexcept]
QSizeF::QSizeF()
無効なサイズを構築します。
isValid()も参照して ください。
[constexpr noexcept]
QSizeF::QSizeF(const QSize &size)
与えられたsize から浮動小数点精度のサイズを構築します。
toSize() およびQSize::toSizeF()も参照 。
[constexpr noexcept]
QSizeF::QSizeF(qreal width, qreal height)
指定された有限のwidth およびheight からサイズを構築します。
[constexpr noexcept]
QSizeF QSizeF::boundedTo(const QSizeF &otherSize) const
このサイズと与えられたotherSize の幅と高さの最小値を保持するサイズを返します。
expandedTo() およびscale()も参照 。
[constexpr noexcept]
QSizeF QSizeF::expandedTo(const QSizeF &otherSize) const
このサイズの最大幅と最大高を保持するサイズと、与えられたotherSize を返します。
[static noexcept]
QSizeF QSizeF::fromCGSize(CGSize size)
size からQRectF を作成します。
toCGSize()も参照 。
[constexpr noexcept]
qreal QSizeF::height() const
高さを返します。
[constexpr noexcept]
bool QSizeF::isEmpty() const
width および height のいずれかが 0 以下の場合はtrue
を返し、それ以外の場合はfalse
を返します。
[noexcept]
bool QSizeF::isNull() const
false
幅と高さの両方が 0.0 の場合はtrue
を返す(符号は無視する)。
[constexpr noexcept]
bool QSizeF::isValid() const
幅と高さの両方が 0 以上の場合はtrue
を返し、それ以外の場合はfalse
を返す。
[constexpr noexcept]
qreal &QSizeF::rheight()
height への参照を返します。
参照を使用すると、height を直接操作できるようになります。例えば
QSizeF size(100, 10.2); size.rheight() += 5.5; // size becomes (100,15.7)
[constexpr noexcept]
qreal &QSizeF::rwidth()
width への参照を返します。
参照を使用すると、幅を直接操作できるようになります。たとえば、次のようになります:
QSizeF size(100.3, 10); size.rwidth() += 20.5; // size becomes (120.8,10)
[noexcept]
void QSizeF::scale(qreal width, qreal height, Qt::AspectRatioMode mode)
与えられたwidth とheight を持つ矩形に、指定されたmode に従ってサイズをスケーリングします。
- mode がQt::IgnoreAspectRatio の場合,サイズは (width,height) に設定されます。
- mode がQt::KeepAspectRatio の場合,現在のサイズは,縦横比を保ったまま, (width,height) 内のできるだけ大きな矩形に拡大縮小されます。
- mode がQt::KeepAspectRatioByExpanding の と き は、 現在のサ イ ズは、 縦横比を保ちつつ、 (width,height) の外側の、 できるだけ小さな矩形に縮小 さ れます。
例:
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()も参照 。
[noexcept]
void QSizeF::scale(const QSizeF &size, Qt::AspectRatioMode mode)
これはオーバーロードされた関数です。
サイズを,指定されたmode に従って,与えられたsize を持つ矩形にスケーリングします。
[noexcept]
QSizeF QSizeF::scaled(qreal width, qreal height, Qt::AspectRatioMode mode) const
指定されたmode に従って,与えられたwidth とheight を持つ矩形にスケーリングされたサイズを返します.
scale()も参照してください 。
[noexcept]
QSizeF QSizeF::scaled(const QSizeF &s, Qt::AspectRatioMode mode) const
これはオーバーロードされた関数です。
与えられたサイズs を持つ矩形に,指定されたmode に従ってスケーリングされたサイズを返します。
[constexpr noexcept]
void QSizeF::setHeight(qreal height)
与えられた有限のheight に高さを設定します。
height()、rheight() およびsetWidth()も参照 。
[constexpr noexcept]
void QSizeF::setWidth(qreal width)
幅を、指定された有限のwidth に設定します。
width()、rwidth()、およびsetHeight() も参照して ください。
[noexcept]
CGSize QSizeF::toCGSize() const
QSizeF から CGSize を作成します。
fromCGSize()も参照 。
[constexpr noexcept]
QSize QSizeF::toSize() const
このサイズの整数ベースのコピーを返します。
返されるサイズの座標は、最も近い整数に丸められることに注意。
QSizeF() およびQSize::toSizeF()も参照 。
[noexcept]
void QSizeF::transpose()
幅と高さの値を入れ替えます。
setWidth()、setHeight() およびtransposed()も参照 。
[constexpr noexcept]
QSizeF QSizeF::transposed() const
width および height の値を入れ替えたサイズを返します。
transpose() も参照 ください。
[constexpr noexcept]
qreal QSizeF::width() const
width を返します。
[constexpr noexcept]
QSizeF &QSizeF::operator*=(qreal factor)
これはオーバーロードされた関数です。
幅と高さの両方を、与えられた有限のfactor で乗算し、そのサイズへの参照を返します。
scale()も参照 。
[constexpr noexcept]
QSizeF &QSizeF::operator+=(const QSizeF &size)
与えられたsize をこのサイズに加算し、このサイズへの参照を返します。例えば
[constexpr noexcept]
QSizeF &QSizeF::operator-=(const QSizeF &size)
このサイズから指定されたsize を引き、このサイズへの参照を返します。例えば、次のようになります:
QSizeF &QSizeF::operator/=(qreal divisor)
これはオーバーロードされた関数です。
与えられたdivisor で幅と高さの両方を割り、そのサイズへの参照を返す。divisor はゼロまたは NaN であってはならない。
scale()も参照 。
関連する非会員
[constexpr noexcept, since 6.8]
bool qFuzzyCompare(const QSizeF &lhs, const QSizeF &rhs)
サイズlhs がサイズrhs とほぼ等しい場合はtrue
を返し、そうでない場合はfalse
を返す。
幅と高さがほぼ等しい場合、サイズはほぼ等しいとみなされます。
この関数は Qt 6.8 で導入されました。
[constexpr noexcept, since 6.8]
bool qFuzzyIsNull(const QSizeF &size)
サイズsize の幅と高さの両方がほぼゼロに等しい場合、true
を返します。
この関数は Qt 6.8 で導入されました。
[constexpr noexcept]
bool operator!=(const QSizeF &lhs, const QSizeF &rhs)
lhs とrhs が十分に異なる場合はtrue
を返し、そうでない場合はfalse
を返します。
警告 この関数は厳密な不等式をチェックしません。その代わりに、ファジー比較を使用してサイズの拡張を比較します。
[constexpr noexcept]
QSizeF operator*(const QSizeF &size, qreal factor)
これはオーバーロードされた関数である。
与えられたsize を与えられた有限のfactor で乗算し、その結果を返す。
QSizeF::scale()も参照のこと 。
[constexpr noexcept]
QSizeF operator*(qreal factor, const QSizeF &size)
これはオーバーロードされた関数です。
指定されたsize に指定された有限のfactor を乗算し、結果を返します。
[constexpr noexcept]
QSizeF operator+(const QSizeF &s1, const QSizeF &s2)
s1 とs2 の和を返す。各要素は別々に加算される。
[constexpr noexcept]
QSizeF operator-(const QSizeF &s1, const QSizeF &s2)
s1 からs2 を減算した結果を返す。
QSizeF operator/(const QSizeF &size, qreal divisor)
これはオーバーロードされた関数である。
与えられたsize を与えられたdivisor で割り、その結果を返す。divisor はゼロまたは NaN であってはならない。
QSizeF::scale()も参照のこと 。
QDataStream &operator<<(QDataStream &stream, const QSizeF &size)
与えられたsize を与えられたstream に書き込み、ストリームへの参照を返します。
Qt データ型のシリアライズ」も参照して ください。
[constexpr noexcept]
bool operator==(const QSizeF &lhs, const QSizeF &rhs)
lhs とrhs がほぼ等しい場合はtrue
を返し、そうでない場合は false を返します。
そうでない場合は false を返します: この関数は、厳密に等しいかどうかをチェックしません。代わりに、ファジー比較を使用して、サイズの拡張子を比較します。
qFuzzyCompareも参照のこと 。
QDataStream &operator>>(QDataStream &stream, QSizeF &size)
与えられたstream から与えられたsize にサイズを読み込み、ストリームへの参照を返します。
Qt データ型のシリアライズ」も参照して ください。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。