# QSize Class Reference

The QSize class defines the size of a two-dimensional object. More...

`#include <qsize.h>`

List of all member functions.

## Public Members

- QSize ()
- QSize ( int w, int h )
- bool isNull () const
- bool isEmpty () const
- bool isValid () const
- int width () const
- int height () const
- void setWidth ( int w )
- void setHeight ( int h )
- void transpose ()
- QSize expandedTo ( const QSize & ) const
- QSize boundedTo ( const QSize & ) const
- QCOORD& rwidth ()
- QCOORD& rheight ()
- QSize& operator+= ( const QSize & )
- QSize& operator-= ( const QSize & )
- QSize& operator*= ( int c )
- QSize& operator*= ( float c )
- QSize& operator/= ( int c )
- QSize& operator/= ( float c )

## Static Public Members

- void warningDivByZero ()

## Related Functions

(Note that these are not member functions.)

- bool operator== (const QSize & s1, const QSize & s2)
- bool operator!= (const QSize & s1, const QSize & s2)
- QSize operator+ (const QSize & s1, const QSize & s2)
- QSize operator- (const QSize & s1, const QSize & s2)
- QSize operator* (const QSize & s, int c)
- QSize operator* (int c, const QSize & s)
- QSize operator* (const QSize & s, float c)
- QSize operator* (float c, const QSize & s)
- QSize operator/ (const QSize & s, int c)
- QSize operator/ (const QSize & s, float c)
- QDataStream & operator<< (QDataStream & s, const QSize & sz)
- QDataStream & operator>> (QDataStream & s, QSize & sz)

## Detailed Description

The QSize class defines the size of a two-dimensional object.

A size is specified by a width and a height.

The coordinate type is QCOORD (defined in qwindowdefs.h as `short).` The minimum value of QCOORD is QCOORD_MIN (-32768) and the maximum value is QCOORD_MAX (32767).

See also: QPoint and QRect.

Examples: tictac/tictac.cpp xform/xform.cpp pref/pref.cpp progress/progress.cpp

## Member Function Documentation

### QSize::QSize ()

Constructs a size with invalid (negative) width and height.

### QSize::QSize ( int w, int h )

Constructs a size with width w and height h.

### QSize QSize::boundedTo ( const QSize & otherSize ) const

Returns a size with the minimum width and height of this size and otherSize.

### QSize QSize::expandedTo ( const QSize & otherSize ) const

Returns a size with the maximum width and height of this size and otherSize.

### int QSize::height () const

Returns the height.

See also: width().

Examples: pref/pref.cpp

### bool QSize::isEmpty () const

Returns TRUE if the width is <= 0 or the height is <= 0, otherwise FALSE.

### bool QSize::isNull () const

Returns TRUE if the width is 0 and the height is 0, otherwise FALSE.

### bool QSize::isValid () const

Returns TRUE if the width is equal to or greater than 0 and the height is equal to or greater than 0, otherwise FALSE.

### QSize & QSize::operator*= ( float c )

Multiplies both the width and height with c and returns a reference to the size.

Note that the result is truncated.

### QSize & QSize::operator*= ( int c )

Multiplies both the width and height with c and returns a reference to the size.

### QSize & QSize::operator+= ( const QSize & s )

Adds s to the size and returns a reference to this size.

Example:

        QSize s(  3, 7 );
        QSize r( -1, 4 );
        s += r;                     // s becomes (2,11)

### QSize & QSize::operator-= ( const QSize & s )

Subtracts s from the size and returns a reference to this size.

Example:

        QSize s(  3, 7 );
        QSize r( -1, 4 );
        s -= r;                     // s becomes (4,3)

### QSize & QSize::operator/= ( float c )

Divides both the width and height by c and returns a reference to the size.

Note that the result is truncated.

### QSize & QSize::operator/= ( int c )

Divides both the width and height by c and returns a reference to the size.

### QCOORD & QSize::rheight ()

Returns a reference to the height.

Using a reference makes it possible to directly manipulate the height.

Example:

        QSize s( 100, 10 );
        s.rheight() += 5;           // s becomes (100,15)

See also: rwidth().

### QCOORD & QSize::rwidth ()

Returns a reference to the width.

Using a reference makes it possible to directly manipulate the width.

Example:

        QSize s( 100, 10 );
        s.rwidth() += 20;           // s becomes (120,10)

See also: rheight().

### void QSize::setHeight ( int h )

Sets the height to h.

See also: height() and setWidth().

Examples: pref/pref.cpp

### void QSize::setWidth ( int w )

Sets the width to w.

See also: width() and setHeight().

Examples: pref/pref.cpp

### void QSize::transpose ()

Swaps the values of width and height.

### int QSize::width () const

Returns the width.

See also: height().

Examples: pref/pref.cpp

## Related Functions

### bool operator== (const QSize & s1, const QSize & s2)

Returns TRUE if s1 and s2 are equal, or FALSE if they are different.

### bool operator!= (const QSize & s1, const QSize & s2)

Returns TRUE if s1 and s2 are different, or FALSE if they are equal.

### QSize operator+ (const QSize & s1, const QSize & s2)

Returns the sum of s1 and s2; each component is added separately.

### QSize operator- (const QSize & s1, const QSize & s2)

Returns s2 subtracted from s1; each component is subtracted separately.

### QSize operator* (const QSize & s, int c)

Multiplies s by c and returns the result.

### QSize operator* (int c, const QSize & s)

Multiplies s by c and returns the result.

### QSize operator* (const QSize & s, float c)

Multiplies s by c and returns the result.

### QSize operator* (float c, const QSize & s)

Multiplies s by c and returns the result.

### QSize operator/ (const QSize & s, int c)

Divides s by c and returns the result.

### QSize operator/ (const QSize & s, float c)

Divides s by c and returns the result.

Note that the result is truncated.

### QDataStream & operator<< (QDataStream & s, const QSize & sz)

Writes the size to the stream and returns a reference to the stream.

Serialization format: [width (INT16), height (INT16)].

### QDataStream & operator>> (QDataStream & s, QSize & sz)

Reads the size from the stream and returns a reference to the stream.

Search the documentation, FAQ, qt-interest archive and more (uses www.troll.no):

This file is part of the Qt toolkit, copyright © 1995-99 Troll Tech, all rights reserved.

It was generated from the following files:

- qsize.h: 1998/11/02
- qsize.cpp: 1998/11/03