Qt 5.6 | Qt Quick | QML Types | Window QML Type

Qt 5.6.3 Reference Documentation

# Window QML Type

Creates a new top-level window More...

Import Statement: | import QtQuick.Window 2.2
Instantiates: | QQuickWindow

- List of all members, including inherited members

## Properties

- active : bool
- activeFocusItem : Item
- color : color
- contentItem : Item
- contentOrientation : Qt::ScreenOrientation
- data : list<Object>
- flags : Qt::WindowFlags
- height : int
- maximumHeight : int
- maximumWidth : int
- minimumHeight : int
- minimumWidth : int
- modality : Qt::WindowModality
- opacity : real
- title : string
- visibility : QWindow::Visibility
- visible : bool
- width : int
- x : int
- y : int

## Attached Properties

- active : bool
- activeFocusItem : Item
- contentItem : Item
- height : int
- visibility : QWindow::Visibility
- width : int

## Signals

- void closing(CloseEvent close)

## Methods

- alert(int msec)
- close()
- hide()
- lower()
- raise()
- requestActivate()
- show()
- showFullScreen()
- showMaximized()
- showMinimized()
- showNormal()

## Detailed Description

The Window object creates a new top-level window for a Qt Quick scene. It automatically sets up the window for use with `QtQuick 2.x` graphical types.

To use this type, you will need to import the module with the following line:

      import QtQuick.Window 2.2

Omitting this import will allow you to have a QML environment without access to window system features.

A Window can be declared inside an Item or inside another Window; in that case the inner Window will automatically become "transient for" the outer Window: that is, most platforms will show it centered upon the outer window by default, and there may be other platform-dependent behaviors, depending also on the flags. If the nested window is intended to be a dialog in your application, you should also set flags to Qt.Dialog, because some window managers will not provide the centering behavior without that flag. You can also declare multiple windows inside a top-level QtObject, in which case the windows will have no transient relationship.

Alternatively you can set or bind x and y to position the Window explicitly on the screen.

When the user attempts to close a window, the closing signal will be emitted. You can force the window to stay open (for example to prompt the user to save changes) by writing an `onClosing` handler and setting `close.accepted = false`.

## Property Documentation

active : bool

The active status of the window.

This QML property was introduced in Qt 5.1.

See also requestActivate().

activeFocusItem : Item

The item which currently has active focus or `null` if there is no item with active focus.

This QML property was introduced in Qt 5.1.

color : color

The background color for the window.

Setting this property is more efficient than using a separate Rectangle.

[read-only] contentItem : Item

The invisible root item of the scene.

contentOrientation : Qt::ScreenOrientation

This is a hint to the window manager in case it needs to display additional content like popups, dialogs, status bars, or similar in relation to the window.

The recommended orientation is Screen.orientation, but an application doesn't have to support all possible orientations, and thus can opt to ignore the current screen orientation.

The difference between the window and the content orientation determines how much to rotate the content by.

The default value is Qt::PrimaryOrientation.

This QML property was introduced in Qt 5.1.

See also Screen.

[default] data : list<Object>

The data property allows you to freely mix visual children, resources and other Windows in a Window.

If you assign another Window to the data list, the nested window will become "transient for" the outer Window.

If you assign an Item to the data list, it becomes a child of the Window's contentItem, so that it appears inside the window. The item's parent will be the window's contentItem, which is the root of the Item ownership tree within that Window.

If you assign any other object type, it is added as a resource.

It should not generally be necessary to refer to the `data` property, as it is the default property for Window and thus all child items are automatically assigned to this property.

See also QWindow::transientParent().

flags : Qt::WindowFlags

The window flags of the window.

The window flags control the window's appearance in the windowing system, whether it's a dialog, popup, or a regular window, and whether it should have a title bar, etc.

The flags which you read from this property might differ from the ones that you set if the requested flags could not be fulfilled.

height : int

Defines the window's position and size.

The (x,y) position is relative to the Screen if there is only one, or to the virtual desktop (arrangement of multiple screens).

      Window { x: 100; y: 100; width: 100; height: 100 }

maximumHeight : int

Defines the window's maximum size.

This is a hint to the window manager to prevent resizing above the specified width and height.

This QML property was introduced in Qt 5.1.

maximumWidth : int

Defines the window's maximum size.

This is a hint to the window manager to prevent resizing above the specified width and height.

This QML property was introduced in Qt 5.1.

minimumHeight : int

Defines the window's minimum size.

This is a hint to the window manager to prevent resizing below the specified width and height.

This QML property was introduced in Qt 5.1.

minimumWidth : int

Defines the window's minimum size.

This is a hint to the window manager to prevent resizing below the specified width and height.

This QML property was introduced in Qt 5.1.

modality : Qt::WindowModality

The modality of the window.

A modal window prevents other windows from receiving input events. Possible values are Qt.NonModal (the default), Qt.WindowModal, and Qt.ApplicationModal.

opacity : real

The opacity of the window.

If the windowing system supports window opacity, this can be used to fade the window in and out, or to make it semitransparent.

A value of 1.0 or above is treated as fully opaque, whereas a value of 0.0 or below is treated as fully transparent. Values inbetween represent varying levels of translucency between the two extremes.

The default value is 1.0.

This QML property was introduced in Qt 5.1.

title : string

The window's title in the windowing system.

The window title might appear in the title area of the window decorations, depending on the windowing system and the window flags. It might also be used by the windowing system to identify the window in other contexts, such as in the task switcher.

visibility : QWindow::Visibility

The screen-occupation state of the window.

Visibility is whether the window should appear in the windowing system as normal, minimized, maximized, fullscreen or hidden.

To set the visibility to AutomaticVisibility means to give the window a default visible state, which might be FullScreen or Windowed depending on the platform. However when reading the visibility property you will always get the actual state, never `AutomaticVisibility`.

When a window is not visible its visibility is Hidden, and setting visibility to Hidden is the same as setting visible to `false`.

This QML property was introduced in Qt 5.1.

See also visible.

visible : bool

Whether the window is visible on the screen.

Setting visible to false is the same as setting visibility to Hidden.

See also visibility.

width : int

Defines the window's position and size.

The (x,y) position is relative to the Screen if there is only one, or to the virtual desktop (arrangement of multiple screens).

      Window { x: 100; y: 100; width: 100; height: 100 }

x : int

Defines the window's position and size.

The (x,y) position is relative to the Screen if there is only one, or to the virtual desktop (arrangement of multiple screens).

      Window { x: 100; y: 100; width: 100; height: 100 }

y : int

Defines the window's position and size.

The (x,y) position is relative to the Screen if there is only one, or to the virtual desktop (arrangement of multiple screens).

      Window { x: 100; y: 100; width: 100; height: 100 }

## Attached Property Documentation

Window.active : bool

This attached property tells whether the window is active. The Window attached property can be attached to any Item.

Here is an example which changes a label to show the active state of the window in which it is shown:

      import QtQuick 2.4
      import QtQuick.Window 2.2

      Text {
          text: Window.active ? "active" : "inactive"
      }

This QML property was introduced in Qt 5.4.

Window.activeFocusItem : Item

This attached property holds the item which currently has active focus or `null` if there is no item with active focus. The Window attached property can be attached to any Item.

This QML property was introduced in Qt 5.4.

Window.contentItem : Item

This attached property holds the invisible root item of the scene or `null` if the item is not in a window. The Window attached property can be attached to any Item.

This QML property was introduced in Qt 5.4.

Window.height : int

These attached properties hold the size of the item's window. The Window attached property can be attached to any Item.

This QML property was introduced in Qt 5.5.

Window.visibility : QWindow::Visibility

This attached property holds whether the window is currently shown in the windowing system as normal, minimized, maximized, fullscreen or hidden. The `Window` attached property can be attached to any Item. If the item is not shown in any window, the value will be Hidden.

This QML property was introduced in Qt 5.4.

See also visible and visibility.

Window.width : int

These attached properties hold the size of the item's window. The Window attached property can be attached to any Item.

This QML property was introduced in Qt 5.5.

## Signal Documentation

void closing(CloseEvent close)

This signal is emitted when the user tries to close the window.

This signal includes a close parameter. The `close.accepted` property is true by default so that the window is allowed to close; but you can implement an `onClosing` handler and set `close.accepted = false` if you need to do something else before the window can be closed.

The corresponding handler is `onClosing`.

This QML signal was introduced in Qt 5.1.

## Method Documentation

alert(int msec)

Causes an alert to be shown for msec milliseconds. If msec is `0` (the default), then the alert is shown indefinitely until the window becomes active again.

In alert state, the window indicates that it demands attention, for example by flashing or bouncing the taskbar entry.

This QML method was introduced in Qt 5.1.

close()

Closes the window.

When this method is called, or when the user tries to close the window by its title bar button, the closing signal will be emitted. If there is no handler, or the handler does not revoke permission to close, the window will subsequently close. If the QGuiApplication::quitOnLastWindowClosed property is `true`, and there are no other windows open, the application will quit.

hide()

Hides the window.

Equivalent to setting visible to `false` or visibility to Hidden.

See also show().

lower()

Lowers the window in the windowing system.

Requests that the window be lowered to appear below other windows.

raise()

Raises the window in the windowing system.

Requests that the window be raised to appear above other windows.

requestActivate()

Requests the window to be activated, i.e. receive keyboard focus.

This QML method was introduced in Qt 5.1.

show()

Shows the window.

This is equivalent to calling showFullScreen(), showMaximized(), or showNormal(), depending on the platform's default behavior for the window type and flags.

See also showFullScreen(), showMaximized(), showNormal(), hide(), and QQuickItem::flags().

showFullScreen()

Shows the window as fullscreen.

Equivalent to setting visibility to FullScreen.

showMaximized()

Shows the window as maximized.

Equivalent to setting visibility to Maximized.

showMinimized()

Shows the window as minimized.

Equivalent to setting visibility to Minimized.

showNormal()

Shows the window as normal, i.e. neither maximized, minimized, nor fullscreen.

Equivalent to setting visibility to Windowed.