QWindow Class

QWindow 클래스는 기본 창 시스템의 창을 나타냅니다. 더 보기...

헤더: #include <QWindow>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
상속합니다: QObjectQSurface
상속받는 사람

QPaintDeviceWindow, QQuickWindow, 그리고 QVulkanWindow

공개 유형

enum AncestorMode { ExcludeTransients, IncludeTransients }
enum Visibility { Windowed, Minimized, Maximized, FullScreen, AutomaticVisibility, Hidden }

속성

공용 함수

QWindow(QScreen *targetScreen = nullptr)
QWindow(QWindow *parent)
virtual ~QWindow()
QSize baseSize() const
Qt::ScreenOrientation contentOrientation() const
void create()
QCursor cursor() const
void destroy()
qreal devicePixelRatio() const
QString filePath() const
Qt::WindowFlags flags() const
virtual QObject *focusObject() const
QRect frameGeometry() const
QMargins frameMargins() const
QPoint framePosition() const
QRect geometry() const
int height() const
QIcon icon() const
bool isActive() const
bool isAncestorOf(const QWindow *child, QWindow::AncestorMode mode = IncludeTransients) const
bool isExposed() const
bool isModal() const
bool isTopLevel() const
bool isVisible() const
(since 6.0) QPointF mapFromGlobal(const QPointF &pos) const
QPoint mapFromGlobal(const QPoint &pos) const
(since 6.0) QPointF mapToGlobal(const QPointF &pos) const
QPoint mapToGlobal(const QPoint &pos) const
QRegion mask() const
int maximumHeight() const
QSize maximumSize() const
int maximumWidth() const
int minimumHeight() const
QSize minimumSize() const
int minimumWidth() const
Qt::WindowModality modality() const
qreal opacity() const
QWindow *parent(QWindow::AncestorMode mode = ExcludeTransients) const
QPoint position() const
void reportContentOrientationChange(Qt::ScreenOrientation orientation)
QSurfaceFormat requestedFormat() const
void resize(const QSize &newSize)
void resize(int w, int h)
QScreen *screen() const
void setBaseSize(const QSize &size)
void setCursor(const QCursor &cursor)
void setFilePath(const QString &filePath)
void setFlag(Qt::WindowType flag, bool on = true)
void setFlags(Qt::WindowFlags flags)
void setFormat(const QSurfaceFormat &format)
void setFramePosition(const QPoint &point)
void setIcon(const QIcon &icon)
bool setKeyboardGrabEnabled(bool grab)
void setMask(const QRegion &region)
void setMaximumSize(const QSize &size)
void setMinimumSize(const QSize &size)
void setModality(Qt::WindowModality modality)
bool setMouseGrabEnabled(bool grab)
void setOpacity(qreal level)
void setParent(QWindow *parent)
void setPosition(const QPoint &pt)
void setPosition(int posx, int posy)
void setScreen(QScreen *newScreen)
void setSizeIncrement(const QSize &size)
void setSurfaceType(QSurface::SurfaceType surfaceType)
void setTransientParent(QWindow *parent)
void setVisibility(QWindow::Visibility v)
void setVulkanInstance(QVulkanInstance *instance)
void setWindowState(Qt::WindowState state)
void setWindowStates(Qt::WindowStates state)
QSize sizeIncrement() const
QString title() const
QWindow *transientParent() const
Qt::WindowType type() const
void unsetCursor()
QWindow::Visibility visibility() const
QVulkanInstance *vulkanInstance() const
int width() const
WId winId() const
Qt::WindowState windowState() const
Qt::WindowStates windowStates() const
int x() const
int y() const

재구현된 공용 함수

virtual QSurfaceFormat format() const override
virtual QSize size() const override
virtual QSurface::SurfaceType surfaceType() const override

공용 슬롯

void alert(int msec)
bool close()
void hide()
void lower()
void raise()
void requestActivate()
void requestUpdate()
void setGeometry(const QRect &rect)
void setGeometry(int posx, int posy, int w, int h)
void setHeight(int arg)
void setMaximumHeight(int h)
void setMaximumWidth(int w)
void setMinimumHeight(int h)
void setMinimumWidth(int w)
void setTitle(const QString &)
void setVisible(bool visible)
void setWidth(int arg)
void setX(int arg)
void setY(int arg)
void show()
void showFullScreen()
void showMaximized()
void showMinimized()
void showNormal()
bool startSystemMove()
bool startSystemResize(Qt::Edges edges)

시그널

void activeChanged()
void contentOrientationChanged(Qt::ScreenOrientation orientation)
void focusObjectChanged(QObject *object)
void heightChanged(int arg)
void maximumHeightChanged(int arg)
void maximumWidthChanged(int arg)
void minimumHeightChanged(int arg)
void minimumWidthChanged(int arg)
void modalityChanged(Qt::WindowModality modality)
void opacityChanged(qreal opacity)
void screenChanged(QScreen *screen)
void transientParentChanged(QWindow *transientParent)
void visibilityChanged(QWindow::Visibility visibility)
void visibleChanged(bool arg)
void widthChanged(int arg)
void windowStateChanged(Qt::WindowState windowState)
void windowTitleChanged(const QString &title)
void xChanged(int arg)
void yChanged(int arg)

정적 공용 멤버

QWindow *fromWinId(WId id)

보호된 함수

virtual void closeEvent(QCloseEvent *ev)
virtual void exposeEvent(QExposeEvent *ev)
virtual void focusInEvent(QFocusEvent *ev)
virtual void focusOutEvent(QFocusEvent *ev)
virtual void hideEvent(QHideEvent *ev)
virtual void keyPressEvent(QKeyEvent *ev)
virtual void keyReleaseEvent(QKeyEvent *ev)
virtual void mouseDoubleClickEvent(QMouseEvent *ev)
virtual void mouseMoveEvent(QMouseEvent *ev)
virtual void mousePressEvent(QMouseEvent *ev)
virtual void mouseReleaseEvent(QMouseEvent *ev)
virtual void moveEvent(QMoveEvent *ev)
virtual bool nativeEvent(const QByteArray &eventType, void *message, qintptr *result)
(since 6.0) virtual void paintEvent(QPaintEvent *ev)
virtual void resizeEvent(QResizeEvent *ev)
virtual void showEvent(QShowEvent *ev)
virtual void tabletEvent(QTabletEvent *ev)
virtual void touchEvent(QTouchEvent *ev)
virtual void wheelEvent(QWheelEvent *ev)

재구현된 보호 함수

virtual bool event(QEvent *ev) override

상세 설명

부모를 제공받은 창은 부모 창의 기본 자식 창이 됩니다.

애플리케이션은 일반적으로 QWindow를 직접 사용하지 않고 QWidget 또는 QQuickView 을 UI로 사용합니다. 하지만 종속성을 최소화하고 싶거나 OpenGL을 직접 사용하고 싶을 때 QBackingStore 또는 QOpenGLContext 을 사용하여 QWindow에 직접 렌더링할 수 있습니다. 래스터 창 예제OpenGL 창 예제는 두 가지 접근 방식을 사용하여 QWindow에 렌더링하는 방법에 대한 유용한 참조 예제입니다.

리소스 관리

Windows는 잠재적으로 많은 메모리를 사용할 수 있습니다. 일반적인 측정은 너비×높이×색 농도입니다. 창에는 깊이 및 스텐실 버퍼뿐만 아니라 이중 및 삼중 버퍼링을 지원하기 위해 여러 버퍼가 포함될 수도 있습니다. 창의 메모리 리소스를 해제하려면 destroy() 함수를 호출하세요.

콘텐츠 오리엔테이션

QWindow에는 화면과 관련하여 창 콘텐츠의 레이아웃을 지정하는 데 사용할 수 있는 reportContentOrientationChange() 함수가 있습니다. 콘텐츠 방향은 단순히 창 콘텐츠가 어떤 방향에 있는지 창 시스템에 대한 힌트입니다. 창 크기는 동일하게 유지하되 콘텐츠는 회전시키려는 경우, 특히 서로 다른 방향 사이에서 회전 애니메이션을 수행할 때 유용합니다. 창 시스템에서는 이 값을 사용하여 시스템 팝업 또는 대화 상자의 레이아웃을 결정할 수 있습니다.

가시성 및 창 시스템 노출

기본적으로 창은 보이지 않으며, 창을 표시하려면 setVisible(true) 또는 show() 등을 호출해야 합니다. 창을 다시 숨기려면 setVisible(false) 또는 hide()를 호출합니다. 보이는 속성은 애플리케이션이 창을 원하는 상태를 설명합니다. 기본 시스템에 따라 표시되는 창이 화면에 표시되지 않을 수도 있습니다. 예를 들어 다른 불투명한 창으로 가려지거나 화면의 실제 영역 밖으로 이동될 수 있습니다. 노출 알림이 있는 창 시스템에서 isExposed() 접근자는 창을 화면에 직접 표시되는 것으로 처리할지 여부를 설명합니다. exposeEvent () 함수는 윈도우잉 시스템에서 노출이 변경되는 등 윈도우의 영역이 무효화될 때마다 호출됩니다. 이 정보를 애플리케이션에 표시하지 않는 윈도우 시스템에서는 isExposed()는 isVisible()와 동일한 값을 반환합니다.

QWindow::Visibility visibility ()를 통해 쿼리하는 것은 visible()과 windowStates()의 기능을 결합한 편리한 API입니다.

렌더링

콘텐츠를 창으로 렌더링하는 데 사용할 수 있는 Qt API는 QPainter 으로 렌더링하여 QSurface::RasterSurface 형의 창으로 콘텐츠를 플러시하는 QBackingStore 과 OpenGL 로 렌더링하여 QSurface::OpenGLSurface 형의 창으로 콘텐츠를 플러시하는 QOpenGLContext 두 가지가 있습니다.

애플리케이션은 isExposed()가 true 을 반환하자마자 렌더링을 시작할 수 있으며 isExposed()가 false 을 반환할 때까지 렌더링을 계속할 수 있습니다. isExposed ()가 언제 변경되는지 확인하려면 exposeEvent()를 다시 구현하세요. 창은 항상 첫 번째 노출 이벤트 전에 크기 조정 이벤트를 받습니다.

초기 지오메트리

창의 너비와 높이가 초기화되지 않은 채로 있으면 창은 플랫폼 창에서 적절한 기본 지오메트리를 가져옵니다. 위치를 초기화하지 않은 채로 두면 플랫폼 창에서 윈도우 시스템이 윈도우의 위치를 지정할 수 있습니다. 예를 들어 X11에서 창 관리자는 일반적으로 새 창이 기존 창을 완전히 가리지 않도록 일종의 스마트한 위치 지정을 수행합니다. 그러나 setGeometry()는 위치와 크기를 모두 초기화하므로 고정된 크기와 자동 위치를 원한다면 resize() 또는 setWidth() 및 setHeight()를 대신 호출해야 합니다.

멤버 유형 문서

enum QWindow::AncestorMode

이 열거형은 임시 부모를 조상으로 간주할지 여부를 제어하는 데 사용됩니다.

Constant설명
QWindow::ExcludeTransients0임시 부모는 조상으로 간주되지 않습니다.
QWindow::IncludeTransients1임시 부모는 조상으로 간주됩니다.

enum QWindow::Visibility

이 열거형은 창이 화면의 어느 부분을 차지하거나 차지해야 하는지를 설명합니다.

Constant설명
QWindow::Windowed2창이 화면의 일부를 차지하지만 반드시 전체 화면을 차지할 필요는 없습니다. 이 상태는 여러 개의 창을 동시에 표시하는 것을 지원하는 창 시스템에서만 발생합니다. 이 상태에서는 WindowFlags가 허용하고 창 표시 시스템에서 지원하는 경우 사용자가 창을 수동으로 이동하고 크기를 조정할 수 있습니다.
QWindow::Minimized3창은 창 최소화 시스템이 최소화 창을 처리하는 방식에 따라 작업 표시줄, 도크, 작업 목록 또는 바탕화면의 항목이나 아이콘으로 축소됩니다.
QWindow::Maximized4창은 전체 화면 하나를 차지하며 제목 표시줄은 계속 표시됩니다. 대부분의 창 열기 시스템에서는 도구 모음에서 최대화 버튼을 클릭하면 이 상태가 됩니다.
QWindow::FullScreen5창이 전체 화면을 차지하고 크기를 조정할 수 없으며 제목 표시줄이 없습니다. 여러 개의 창을 동시에 표시하는 기능을 지원하지 않는 일부 플랫폼에서는 창이 숨겨져 있지 않을 때 이 상태가 일반적인 가시성이 될 수 있습니다.
QWindow::AutomaticVisibility1이는 창에 기본 표시 상태를 부여하는 것으로, 플랫폼에 따라 전체 화면 또는 창으로 표시될 수 있습니다. setVisibility 에 매개변수로 지정할 수 있지만 가시성 접근자에서 다시 읽혀지지 않습니다.
QWindow::Hidden0창이 어떤 식으로든 표시되지는 않지만 잠재적인 가시성을 기억할 수 있으며, 이 잠재적인 가시성은 자동 가시성을 설정하여 복원할 수 있습니다.

속성 문서

[read-only] active : const bool

이 속성은 창의 활성 상태를 유지합니다.

액세스 기능을 저장합니다:

bool isActive() const

알림 신호:

void activeChanged()

requestActivate()도 참조하세요 .

contentOrientation : Qt::ScreenOrientation

이 속성은 창 콘텐츠의 방향을 유지합니다.

이는 창과 관련하여 팝업, 대화 상자, 상태 표시줄 등과 같은 추가 콘텐츠를 표시해야 하는 경우 창 관리자에게 힌트를 제공합니다.

권장 방향은 QScreen::orientation()이지만 애플리케이션이 가능한 모든 방향을 지원할 필요는 없으므로 현재 화면 방향을 무시하도록 선택할 수 있습니다.

창과 콘텐츠 방향의 차이에 따라 콘텐츠를 얼마나 회전할지 결정됩니다. QScreen::angleBetween(), QScreen::transformBetween() 및 QScreen::mapBetween()를 사용하여 필요한 변환을 계산할 수 있습니다.

기본값은 다음과 같습니다. Qt::PrimaryOrientation

함수 액세스:

Qt::ScreenOrientation contentOrientation() const
void reportContentOrientationChange(Qt::ScreenOrientation orientation)

알림 신호입니다:

void contentOrientationChanged(Qt::ScreenOrientation orientation)

flags : Qt::WindowFlags

이 속성은 창의 창 플래그를 보유합니다.

창 플래그는 창이 대화상자인지, 팝업인지, 일반 창인지, 제목 표시줄이 있어야 하는지 등 창 시스템에서 창의 모양을 제어합니다.

요청된 플래그를 충족할 수 없는 경우 실제 창 플래그는 setFlags()로 설정한 플래그와 다를 수 있습니다.

함수에 액세스합니다:

Qt::WindowFlags flags() const
void setFlags(Qt::WindowFlags flags)

setFlag()도 참조하세요 .

height : int

이 프로퍼티는 창 지오메트리의 높이를 보유합니다.

함수에 액세스합니다:

int height() const
void setHeight(int arg)

알림 신호:

void heightChanged(int arg)

maximumHeight : int

이 프로퍼티는 창 지오메트리의 최대 높이를 보유합니다.

액세스 함수입니다:

int maximumHeight() const
void setMaximumHeight(int h)

알림 신호:

void maximumHeightChanged(int arg)

maximumWidth : int

이 속성은 창 지오메트리의 최대 너비를 보유합니다.

액세스 함수입니다:

int maximumWidth() const
void setMaximumWidth(int w)

알림 신호:

void maximumWidthChanged(int arg)

minimumHeight : int

이 프로퍼티는 창 지오메트리의 최소 높이를 보유합니다.

액세스 함수입니다:

int minimumHeight() const
void setMinimumHeight(int h)

알림 신호:

void minimumHeightChanged(int arg)

minimumWidth : int

이 속성은 창 지오메트리의 최소 너비를 보유합니다.

액세스 함수입니다:

int minimumWidth() const
void setMinimumWidth(int w)

알림 신호:

void minimumWidthChanged(int arg)

modality : Qt::WindowModality

이 속성은 창의 모달리티를 보유합니다.

모달 창은 다른 창이 입력 이벤트를 수신하지 못하도록 합니다. Qt는 Qt::WindowModalQt::ApplicationModal 의 두 가지 모달리티를 지원합니다.

기본적으로 이 속성은 다음과 같습니다. Qt::NonModal

액세스 함수:

Qt::WindowModality modality() const
void setModality(Qt::WindowModality modality)

알림 신호입니다:

void modalityChanged(Qt::WindowModality modality)

Qt::WindowModality참조하십시오 .

opacity : qreal

이 속성은 창 시스템에서 창의 불투명도를 유지합니다.

윈도우잉 시스템이 창 불투명도를 지원하는 경우 이 속성을 사용하여 창을 페이드 인/아웃하거나 반투명하게 만들 수 있습니다.

값이 1.0 이상이면 완전히 불투명한 것으로 처리되고 0.0 이하면 완전히 투명한 것으로 처리됩니다. 그 사이의 값은 두 극단 사이의 다양한 투명도 수준을 나타냅니다.

기본값은 1.0입니다.

기능에 액세스합니다:

qreal opacity() const
void setOpacity(qreal level)

알림 신호:

void opacityChanged(qreal opacity)

title : QString

이 속성은 창 시스템에서 창의 제목을 저장합니다.

창 제목은 창 시스템 및 창 플래그에 따라 창 장식의 제목 영역에 표시될 수 있습니다. 또한 작업 전환기와 같은 다른 컨텍스트에서 창을 식별하기 위해 창 시스템에서 사용할 수도 있습니다.

액세스 기능:

QString title() const
void setTitle(const QString &)

알림 신호:

void windowTitleChanged(const QString &title)

flags()도 참조하세요 .

transientParent : QWindow*

이 속성은 이 창이 임시 팝업인 창을 보유합니다.

이는 창 관리자에게 이 창이 일시적인 부모를 대신하는 대화상자 또는 팝업이라는 것을 알려주는 힌트입니다.

창 관리자에 따라 기본적으로 창이 일시적인 parent 위에 중앙에 위치하도록 하려면 setFlags()를 적절한 Qt::WindowType (예: Qt::Dialog)로 호출해야 할 수도 있습니다.

액세스 기능:

QWindow *transientParent() const
void setTransientParent(QWindow *parent)

알림 신호:

void transientParentChanged(QWindow *transientParent)

parent()도 참조하세요 .

visibility : Visibility

이 속성은 창의 화면 점유 상태를 유지합니다.

가시성은 창을 창 표시 시스템에서 일반, 최소화, 최대, 전체 화면 또는 숨김으로 표시할지 여부를 나타냅니다.

가시성을 AutomaticVisibility 으로 설정한다는 것은 창에 기본 표시 상태를 부여한다는 의미이며, 플랫폼에 따라 전체 화면 또는 창으로 표시될 수 있습니다. 가시성 속성을 읽을 때는 항상 AutomaticVisibility 이 아닌 실제 상태를 가져옵니다.

액세스 기능

QWindow::Visibility visibility() const
void setVisibility(QWindow::Visibility v)

알림 신호:

void visibilityChanged(QWindow::Visibility visibility)

visible : bool

이 속성은 창이 표시되는지 여부를 보유합니다.

이 속성은 창 표시 시스템에서 창의 표시 여부를 제어합니다.

기본적으로 창은 표시되지 않으며, 창을 표시하려면 setVisible(true) 또는 show() 등을 호출해야 합니다.

참고: 창을 숨긴다고 해서 창이 창잉 시스템에서 제거되는 것이 아니라 숨겨지는 것일 뿐입니다. 전체 화면 애플리케이션에 전용 데스크톱을 제공하는 윈도우 시스템(예: macOS)에서는 전체 화면 창을 숨겨도 해당 데스크톱이 제거되지 않고 비어 있는 상태로 유지됩니다. 같은 애플리케이션의 다른 창이 전체 화면으로 표시되어 해당 바탕화면을 채울 수 있습니다. 창 표시 시스템에서 창을 완전히 제거하려면 QWindow::close 을 사용하세요.

기능 액세스:

bool isVisible() const
void setVisible(bool visible)

알리미 신호:

void visibleChanged(bool arg)

show()도 참조하세요 .

width : int

이 프로퍼티는 창 지오메트리의 너비를 보유합니다.

액세스 함수입니다:

int width() const
void setWidth(int arg)

알림 신호:

void widthChanged(int arg)

x : int

이 프로퍼티는 창 지오메트리의 x 위치를 보유합니다.

함수에 액세스합니다:

int x() const
void setX(int arg)

알림 신호:

void xChanged(int arg)

y : int

이 프로퍼티는 창 지오메트리의 y 위치를 보유합니다.

함수에 액세스합니다:

int y() const
void setY(int arg)

노티파이 신호:

void yChanged(int arg)

멤버 함수 문서

[explicit] QWindow::QWindow(QScreen *targetScreen = nullptr)

targetScreen 에 최상위 레벨로 창을 만듭니다.

setVisible(true), show() 등을 호출할 때까지 창이 표시되지 않습니다.

setScreen()도 참조하세요 .

[explicit] QWindow::QWindow(QWindow *parent)

주어진 parent 창의 자식으로 창을 만듭니다.

창은 부모 창 안에 포함되며, 좌표는 부모를 기준으로 합니다.

화면은 부모로부터 상속됩니다.

setParent()도 참조하세요 .

[virtual noexcept] QWindow::~QWindow()

창을 파괴합니다.

[slot] void QWindow::alert(int msec)

msec 밀리초 동안 알림을 표시합니다. msec (기본값)이 0 인 경우 창이 다시 활성화될 때까지 알림이 무기한 표시됩니다. 이 기능은 활성 창에는 영향을 미치지 않습니다.

경고 상태에서는 창이 깜박이거나 작업 표시줄 항목이 튕기는 등의 방법으로 주의가 필요하다는 것을 나타냅니다.

QSize QWindow::baseSize() const

창의 기본 크기를 반환합니다.

setBaseSize()도 참조하세요 .

[slot] bool QWindow::close()

창을 닫습니다.

그러면 창이 닫히면서 destroy()가 호출되고 애플리케이션이 종료될 수 있습니다. 성공하면 true 을 반환하고, 상위 창이 있는 경우 false를 반환합니다(이 경우 최상위 창이 대신 닫혀야 합니다).

destroy(), QGuiApplication::quitOnLastWindowClosed() 및 closeEvent()도 참조하세요 .

[virtual protected] void QWindow::closeEvent(QCloseEvent *ev)

닫기 이벤트를 처리하려면 이 함수를 재정의합니다(ev).

이 함수는 창을 닫으라는 요청이 있을 때 호출됩니다. 창이 닫히지 않도록 하려면 이벤트에서 QEvent::ignore()를 호출하세요.

close()도 참조하세요 .

void QWindow::create()

창과 관련된 플랫폼 리소스를 할당합니다.

이 시점에서 setFormat()를 사용하여 설정한 서페이스 형식이 실제 네이티브 서페이스로 확인됩니다. 그러나 setVisible()가 호출될 때까지 창은 숨겨진 상태로 유지됩니다.

이 함수는 show(), setVisible(), winId() 및 플랫폼 리소스에 액세스해야 하는 다른 함수에 의해 암시적으로 호출되므로 일반적으로 직접 호출할 필요는 없습니다.

필요한 경우 destroy()를 호출하여 플랫폼 리소스를 해제하세요.

destroy()도 참조하세요 .

QCursor QWindow::cursor() const

이 창의 커서 모양

setCursor() 및 unsetCursor()도 참조하세요 .

void QWindow::destroy()

이 창과 관련된 기본 플랫폼 리소스를 해제합니다.

create()도 참조하세요 .

qreal QWindow::devicePixelRatio() const

창의 물리적 픽셀과 디바이스 독립 픽셀 사이의 비율을 반환합니다. 이 값은 창이 표시되는 화면에 따라 달라지며 창을 이동하면 변경될 수 있습니다.

일반적인 값은 일반 디스플레이의 경우 1.0, Apple '레티나' 디스플레이의 경우 2.0입니다.

참고: 플랫폼 창으로 지원되지 않는 창, 즉 create()가 호출되지 않은 창에서는 이 함수가 연결된 QScreen 의 디바이스 픽셀 비율로 되돌아갑니다.

QScreen::devicePixelRatio()도 참조하세요 .

[override virtual protected] bool QWindow::event(QEvent *ev)

다시 구현합니다: QObject::event(QEvent *e).

창으로 전송된 모든 이벤트(ev)를 처리하려면 이 함수를 재정의합니다. 이벤트가 인식되어 처리되면 true 을 반환합니다.

마우스 이벤트, 키 이벤트, 크기 조정 이벤트 등이 평소처럼 전송되도록 하려면 베이스 클래스 버전을 호출하는 것을 잊지 마세요.

[virtual protected] void QWindow::exposeEvent(QExposeEvent *ev)

노출 이벤트(ev)는 창이 노출되지 않은 상태와 노출된 상태 사이를 이동할 때 창 시스템에서 전송합니다.

노출된 창은 사용자에게 표시될 가능성이 있습니다. 창이 화면 밖으로 이동하거나 다른 창에 완전히 가려지거나 최소화되거나 이와 유사한 경우 이 함수가 호출되고 isExposed() 값이 false로 변경될 수 있습니다. 이 이벤트를 사용하여 창이 노출되었을 때만 애니메이션과 같은 비용이 많이 드는 작업이 실행되도록 제한할 수 있습니다.

이 이벤트는 페인팅에 사용해서는 안 됩니다. 페인팅을 처리하려면 paintEvent()를 대신 구현하세요.

크기 조정 이벤트는 항상 창이 처음 표시될 때 노출 이벤트 전에 전송됩니다.

paintEvent() 및 isExposed()도 참조하세요 .

QString QWindow::filePath() const

이 창이 나타내는 파일 이름입니다.

setFilePath()도 참조하세요 .

[virtual protected] void QWindow::focusInEvent(QFocusEvent *ev)

이벤트에서 포커스를 처리하려면 이를 재정의합니다(ev).

이벤트 내 포커스는 창이 키보드 포커스를 받을 때 전송됩니다.

focusOutEvent()도 참조하세요 .

[virtual] QObject *QWindow::focusObject() const

키 이벤트와 같이 포커스가 묶인 이벤트의 최종 수신자가 될 QObject 을 반환합니다.

[signal] void QWindow::focusObjectChanged(QObject *object)

이 신호는 포커스에 연결된 이벤트의 최종 수신자가 object 로 변경될 때 발생합니다.

focusObject()도 참조하세요 .

[virtual protected] void QWindow::focusOutEvent(QFocusEvent *ev)

포커스 아웃 이벤트를 처리하려면 이를 재정의합니다(ev).

포커스 아웃 이벤트는 창이 키보드 포커스를 잃을 때 전송됩니다.

focusInEvent()도 참조하세요 .

[override virtual] QSurfaceFormat QWindow::format() const

재구현합니다: QSurface::format() const.

이 창의 실제 형식을 반환합니다.

창이 생성된 후 이 함수는 창의 실제 표면 형식을 반환합니다. 플랫폼에서 요청된 형식을 충족할 수 없는 경우 요청된 형식과 다를 수 있습니다. 또한 특정 버퍼 크기가 요청된 것보다 클 수 있는 등 상위 집합일 수도 있습니다.

참고: 플랫폼에 따라 이 서피스 형식의 특정 값에는 요청된 값, 즉 setFormat()로 전달된 값이 여전히 포함될 수 있습니다. 일반적인 예로는 OpenGL 버전, 프로필 및 옵션이 있습니다. 이러한 값은 컨텍스트에 따라 다르며 단일 창이 수명 기간 동안 여러 컨텍스트와 함께 사용될 수 있으므로 create() 중에 업데이트되지 않을 수 있습니다. 이러한 값을 쿼리하려면 QOpenGLContext 의 format()을 대신 사용하세요.

setFormat(), create(), requestedFormat() 및 QOpenGLContext::format()도 참조하세요 .

QRect QWindow::frameGeometry() const

창 프레임을 포함한 창의 지오메트리를 반환합니다.

지오메트리는 해당 화면의 가상 지오메트리()와 관련되어 있습니다.

geometry() 및 frameMargins()도 참조하세요 .

QMargins QWindow::frameMargins() const

창을 둘러싼 창 프레임 여백을 반환합니다.

geometry() 및 frameGeometry()도 참조하세요 .

QPoint QWindow::framePosition() const

창 프레임을 포함하여 창의 왼쪽 상단 위치를 반환합니다.

frameGeometry().topLeft()와 동일한 값을 반환합니다.

setFramePosition(), geometry() 및 frameGeometry()도 참조하세요 .

[static] QWindow *QWindow::fromWinId(WId id)

다른 프로세스나 Qt 아래의 네이티브 라이브러리를 사용하여 만든 창의 로컬 표현을 만듭니다.

네이티브 창에 id 핸들이 주어지면, 이 메서드는 setParent() 및 setTransientParent() 같은 메서드를 호출할 때 창을 표현하는 데 사용할 수 있는 QWindow 객체를 생성합니다.

이를 지원하는 플랫폼에서는 네이티브 창 안에 QWindow 을 임베드하거나 QWindow 안에 네이티브 창을 임베드하는 데 사용할 수 있습니다.

외부 창이 지원되지 않거나 플랫폼 플러그인에서 네이티브 창 임베딩에 실패한 경우 이 함수는 nullptr 을 반환합니다.

참고: 결과 QWindow 는 기본 네이티브 창을 조작하거나(부모 변경 외에) 네이티브 창의 상태 변화를 관찰하는 데 사용해서는 안 됩니다. 이러한 종류의 작업에 대한 모든 지원은 부수적이며 플랫폼에 따라 크게 달라지며 테스트되지 않았습니다.

setParent()도 참조하세요 .

QRect QWindow::geometry() const

창 프레임을 제외한 창의 지오메트리를 반환합니다.

지오메트리는 해당 화면의 가상 지오메트리()와 관련되어 있습니다.

setGeometry(), frameMargins() 및 frameGeometry()도 참조하세요 .

[slot] void QWindow::hide()

창을 숨깁니다.

setVisible(거짓)을 호출하는 것과 동일합니다.

show() 및 setVisible()도 참조하세요 .

[virtual protected] void QWindow::hideEvent(QHideEvent *ev)

숨기기 이벤트를 처리하려면 이 함수를 재정의하세요(ev).

이 함수는 창이 창 시스템에서 숨기기를 요청했을 때 호출됩니다.

QIcon QWindow::icon() const

창 시스템에서 창의 아이콘을 반환합니다.

setIcon()도 참조하세요 .

bool QWindow::isActive() const

창이 활성화되어 있으면 true 을 반환합니다.

입력 포커스가 있는 창과 포커스 창과 동일한 상위/임시 상위 체인에 있는 창이 이에 해당합니다.

일반적으로 활성 창은 스타일 관점에서 활성 상태로 표시되어야 합니다.

현재 포커스가 있는 창을 가져오려면 QGuiApplication::focusWindow()를 사용합니다.

참고: 속성에 대한 게터 함수 active.

requestActivate()도 참조하세요 .

bool QWindow::isAncestorOf(const QWindow *child, QWindow::AncestorMode mode = IncludeTransients) const

주어진 창이 child 의 조상인 경우 true 을 반환합니다. modeIncludeTransients 인 경우 임시 부모도 조상으로 간주됩니다.

bool QWindow::isExposed() const

이 창이 창 표시 시스템에 노출된 경우 반환합니다.

창이 노출되지 않으면 애플리케이션에 표시되지만 창 표시 시스템에는 여전히 표시되지 않으므로 애플리케이션은 애니메이션 및 기타 그래픽 활동을 최소화해야 합니다.

이 값이 변경될 때마다 exposeEvent()가 전송됩니다.

exposeEvent()도 참조하세요 .

bool QWindow::isModal() const

창이 모달 창인지 여부를 반환합니다.

모달 창은 다른 창에서 입력을 받지 못하도록 합니다.

QWindow::modality참조하세요 .

bool QWindow::isTopLevel() const

창이 최상위 창인지, 즉 상위 창이 없는지 반환합니다.

[virtual protected] void QWindow::keyPressEvent(QKeyEvent *ev)

키 누르기 이벤트를 처리하려면 이를 재정의합니다 (ev).

keyReleaseEvent()도 참조하세요 .

[virtual protected] void QWindow::keyReleaseEvent(QKeyEvent *ev)

키 릴리스 이벤트를 처리하려면 이를 재정의합니다(ev).

keyPressEvent()도 참조하세요 .

[slot] void QWindow::lower()

창 시스템에서 창을 내립니다.

창을 다른 창 아래에 표시하도록 창을 낮추도록 요청합니다.

[since 6.0] QPointF QWindow::mapFromGlobal(const QPointF &pos) const

전역 화면 좌표 pos 를 창 좌표로 변환합니다.

이 함수는 Qt 6.0에 도입되었습니다.

mapToGlobal()도 참조하십시오 .

QPoint QWindow::mapFromGlobal(const QPoint &pos) const

과부하가 걸린 기능입니다.

[since 6.0] QPointF QWindow::mapToGlobal(const QPointF &pos) const

창 좌표 pos 를 전역 화면 좌표로 변환합니다. 예를 들어 mapToGlobal(QPointF(0,0)) 은 창의 왼쪽 상단 픽셀의 전역 좌표를 제공합니다.

이 함수는 Qt 6.0에 도입되었습니다.

mapFromGlobal()도 참조하세요 .

QPoint QWindow::mapToGlobal(const QPoint &pos) const

과부하가 걸린 기능입니다.

QRegion QWindow::mask() const

창에 설정된 마스크를 반환합니다.

마스크는 애플리케이션이 지정된 영역 외부의 마우스 또는 터치 입력을 받지 않으려는 윈도우 시스템에 대한 힌트입니다.

setMask()도 참조하세요 .

QSize QWindow::maximumSize() const

창의 최대 크기를 반환합니다.

setMaximumSize()도 참조하세요 .

QSize QWindow::minimumSize() const

창의 최소 크기를 반환합니다.

setMinimumSize()도 참조하세요 .

[signal] void QWindow::modalityChanged(Qt::WindowModality modality)

이 신호는 Qwindow::modality 속성이 modality 로 변경될 때 발생합니다.

참고: 속성에 대한 알림 신호 modality.

[virtual protected] void QWindow::mouseDoubleClickEvent(QMouseEvent *ev)

마우스 더블 클릭 이벤트를 처리하려면 이를 재정의합니다 (ev).

mousePressEvent() 및 QStyleHints::mouseDoubleClickInterval()도 참조하세요 .

[virtual protected] void QWindow::mouseMoveEvent(QMouseEvent *ev)

마우스 이동 이벤트를 처리하려면 이를 재정의합니다(ev).

[virtual protected] void QWindow::mousePressEvent(QMouseEvent *ev)

마우스 누르기 이벤트를 처리하려면 이를 재정의합니다 (ev).

mouseReleaseEvent()도 참조하세요 .

[virtual protected] void QWindow::mouseReleaseEvent(QMouseEvent *ev)

마우스 릴리스 이벤트를 처리하려면 이를 재정의합니다 (ev).

mousePressEvent()도 참조하세요 .

[virtual protected] void QWindow::moveEvent(QMoveEvent *ev)

이를 재정의하여 창 이동 이벤트를 처리합니다(ev).

[virtual protected] bool QWindow::nativeEvent(const QByteArray &eventType, void *message, qintptr *result)

플랫폼 종속 이벤트를 처리하려면 이 값을 재정의합니다. eventType , messageresult 이 주어집니다.

이로 인해 애플리케이션이 이식성이 떨어질 수 있습니다.

이벤트가 처리된 경우에만 참을 반환해야 합니다.

[virtual protected, since 6.0] void QWindow::paintEvent(QPaintEvent *ev)

페인트 이벤트(ev)는 창을 처음 표시하거나 다른 창을 이동하여 창 일부가 가려지는 등 창 영역에 다시 페인트가 필요할 때마다 창 시스템에서 전송됩니다.

애플리케이션은 창이 노출된 상태와 관계없이 페인트 이벤트에 응답하여 창에 렌더링할 것으로 예상됩니다. 예를 들어, 창이 노출되기 전에 페인트 이벤트를 전송하여 사용자에게 표시할 준비를 할 수 있습니다.

이 기능은 Qt 6.0에 도입되었습니다.

exposeEvent()도 참조하세요 .

QWindow *QWindow::parent(QWindow::AncestorMode mode = ExcludeTransients) const

상위 창이 있으면 반환합니다.

modeIncludeTransients 인 경우 부모가 없는 경우 임시 부모가 반환됩니다.

부모가 없는 창을 최상위 창이라고 합니다.

setParent()도 참조하세요 .

QPoint QWindow::position() const

창 프레임을 제외한 바탕화면의 창 위치를 반환합니다.

참고: 모든 창 시스템이 최상위 창 위치 설정 또는 쿼리를 지원하는 것은 아닙니다. 이러한 시스템에서는 프로그래밍 방식으로 창을 이동해도 아무런 효과가 없을 수 있으며 QPoint(0, 0) 와 같은 인위적인 값이 현재 위치에 대해 반환될 수 있습니다.

setPosition()도 참조하세요 .

[slot] void QWindow::raise()

창 시스템에서 창을 올립니다.

창을 다른 창 위에 표시하도록 창을 올리도록 요청합니다.

[slot] void QWindow::requestActivate()

창을 활성화하도록 요청합니다(즉, 키보드 포커스를 받도록 요청합니다).

isActive() 및 QGuiApplication::focusWindow()도 참조하세요 .

[slot] void QWindow::requestUpdate()

이 창에 QEvent::UpdateRequest 이벤트가 전달되도록 예약합니다.

이벤트는 디스플레이 동기화와 동기화가 가능한 플랫폼에서는 디스플레이와 동기화하여 전달됩니다. 그렇지 않은 경우 이벤트는 최대 5ms의 지연 후에 전달됩니다. 창과 연결된 화면에서 60Hz보다 높은 refresh rate 을 보고하면 간격이 5보다 작은 값으로 축소됩니다. 이 추가 시간은 이벤트 루프에 시스템 이벤트를 수집할 수 있는 약간의 유휴 시간을 제공하기 위한 것으로, QT_QPA_UPDATE_IDLE_TIME 환경 변수를 사용하여 재정의할 수 있습니다.

애니메이션을 구동할 때 이 함수는 드로잉이 완료된 후 한 번만 호출해야 합니다. 이 함수를 여러 번 호출하면 단일 이벤트가 창에 전달됩니다.

QWindow 의 서브클래스는 event()를 다시 구현하고 이벤트를 가로채서 애플리케이션의 렌더링 코드를 호출한 다음 기본 클래스 구현을 호출해야 합니다.

참고: 서브클래스의 event() 재구현은 이벤트가 기본 클래스에서 처리할 필요가 없는 것이 확실하지 않는 한 반드시 기본 클래스 구현을 호출해야 합니다. 예를 들어, 이 함수의 기본 구현은 QEvent::Timer 이벤트에 의존합니다. 따라서 이를 필터링하면 업데이트 이벤트의 전달이 중단될 수 있습니다.

QSurfaceFormat QWindow::requestedFormat() const

이 창의 요청된 서피스 포맷을 반환합니다.

요청된 형식이 플랫폼 구현에서 지원되지 않는 경우 요청된 형식은 실제 창 형식과 다를 수 있습니다.

setFormat()로 설정된 값입니다.

setFormat() 및 format()도 참조하세요 .

void QWindow::resize(const QSize &newSize)

창 프레임을 제외한 창 크기를 다음과 같이 설정합니다. newSize

size() 및 geometry()도 참조하세요 .

void QWindow::resize(int w, int h)

창 프레임을 제외한 창 크기를 너비 w 및 높이로 구성된 QSize 로 설정합니다. h

대화형으로 창 크기를 조정하려면 startSystemResize()를 참조하세요.

size() 및 geometry()도 참조하세요 .

[virtual protected] void QWindow::resizeEvent(QResizeEvent *ev)

크기 조정 이벤트를 처리하려면 이를 재정의합니다(ev).

크기 조정 이벤트는 창 크기 조정 시스템에서 창 크기가 조정될 때마다 setGeometry() 또는 resize() 요청을 승인하는 창 시스템을 통해 직접적으로 또는 사용자가 수동으로 창 크기를 조정하는 방식을 통해 간접적으로 호출됩니다.

QScreen *QWindow::screen() const

창이 표시되는 화면을 반환하거나, 창이 없는 경우 null을 반환합니다.

하위 창의 경우 해당 최상위 창의 화면을 반환합니다.

setScreen() 및 QScreen::virtualSiblings()도 참조하세요 .

[signal] void QWindow::screenChanged(QScreen *screen)

이 신호는 setScreen()로 명시적으로 설정하거나 창 화면이 제거될 때 자동으로 창 screen 이 변경될 때 발생합니다.

void QWindow::setBaseSize(const QSize &size)

창의 기본 size 을 설정합니다.

창이 sizeIncrement()를 정의하는 경우 기본 크기는 적절한 창 크기를 계산하는 데 사용됩니다.

setMinimumSize(), setMaximumSize(), setSizeIncrement() 및 baseSize()도 참조하세요 .

void QWindow::setCursor(const QCursor &cursor)

이 창의 커서 모양을 설정합니다.

재정의 커서가 설정되어 있지 않으면 마우스 cursor 가 이 창 위에 있을 때 이 모양을 취합니다. 유용한 다양한 모양은 list of predefined cursor objects 을 참조하세요.

커서가 설정되어 있지 않거나 unsetCursor()를 호출한 후에는 상위 창의 커서가 사용됩니다.

기본적으로 커서는 Qt::ArrowCursor 모양입니다.

일부 기본 창 구현에서는 마우스를 잡더라도 커서가 창을 벗어나면 커서가 초기화됩니다. 창 밖에 있을 때에도 모든 창에 커서를 설정하려면 QGuiApplication::setOverrideCursor()를 사용하세요.

cursor() 및 QGuiApplication::setOverrideCursor()도 참조하세요 .

void QWindow::setFilePath(const QString &filePath)

이 창이 표시할 파일 이름을 설정합니다.

창 표시 시스템에서는 filePath 을 사용하여 이 창이 표시하고 있는 문서의 경로를 타일 막대에 표시할 수 있습니다.

filePath()도 참조하세요 .

void QWindow::setFlag(Qt::WindowType flag, bool on = true)

on 이 참이면 이 창에 창 플래그 flag 를 설정하고, 그렇지 않으면 플래그를 지웁니다.

setFlags(), flags() 및 type()도 참조하세요 .

void QWindow::setFormat(const QSurfaceFormat &format)

창의 표면을 설정합니다 format.

이 형식은 색 농도, 알파, 깊이 및 스텐실 버퍼 크기 등과 같은 속성을 결정합니다. 예를 들어, 창에 투명한 배경을 부여하려면(창 시스템이 합성을 지원하고 창 내의 다른 콘텐츠가 다시 불투명하게 만들지 않는다면) 창을 투명하게 만들 수 있습니다:

QSurfaceFormat format;
format.setAlphaBufferSize(8);
window.setFormat(format);

표면 형식은 create() 함수에서 해결됩니다. create () 함수가 호출된 후 이 함수를 호출하면 기본 서페이스의 서페이스 형식이 다시 확인되지 않습니다.

이 함수를 통해 형식을 명시적으로 설정하지 않은 경우 QSurfaceFormat::defaultFormat()에서 반환된 형식이 사용됩니다. 즉, 여러 개의 창이 있는 경우 이 함수에 대한 개별 호출을 첫 번째 창을 만들기 전에 QSurfaceFormat::setDefaultFormat()를 한 번 호출하는 것으로 대체할 수 있습니다.

format(), create(), destroy() 및 QSurfaceFormat::setDefaultFormat()도 참조하세요 .

void QWindow::setFramePosition(const QPoint &point)

창 프레임을 포함하여 창(point)의 왼쪽 상단 위치를 설정합니다.

이 위치는 해당 화면의 가상 지오메트리()를 기준으로 합니다.

framePosition(), setGeometry() 및 frameGeometry()도 참조하세요 .

[slot] void QWindow::setGeometry(const QRect &rect)

창 프레임을 제외한 창의 지오메트리를 rect 로 설정합니다.

지오메트리는 해당 화면의 가상 지오메트리()와 관련되어 있습니다.

geometry()도 참조하세요 .

[slot] void QWindow::setGeometry(int posx, int posy, int w, int h)

창 프레임을 제외한 창의 지오메트리를 posx, posy, wh 에서 구성한 직사각형으로 설정합니다.

지오메트리는 해당 화면의 가상 지오메트리()와 관련되어 있습니다.

geometry()도 참조하세요 .

void QWindow::setIcon(const QIcon &icon)

창 열기 시스템에서 창의 icon 을 설정합니다.

창 아이콘은 창을 꾸미거나 작업 전환기에서 창을 표시하는 등의 창 시스템에서 사용할 수 있습니다.

참고: macOS에서 창 제목 표시줄 아이콘은 문서를 나타내는 창을 위한 것으로, 파일 경로도 설정되어 있는 경우에만 표시됩니다.

icon() 및 setFilePath()도 참조하세요 .

bool QWindow::setKeyboardGrabEnabled(bool grab)

키보드 잡기를 활성화할지 여부를 설정합니다(grab).

반환값이 참이면 창은 setKeyboardGrabEnabled(false)가 호출될 때까지 모든 키 이벤트를 수신하고, 다른 창은 키 이벤트를 전혀 수신하지 않습니다. 마우스 이벤트는 영향을 받지 않습니다. 이를 가져오려면 setMouseGrabEnabled()를 사용하세요.

setMouseGrabEnabled()도 참조하세요 .

void QWindow::setMask(const QRegion &region)

창의 마스크를 설정합니다.

마스크는 애플리케이션이 지정된 region 외부의 마우스 또는 터치 입력을 받지 않으려는 윈도우 시스템에 대한 힌트입니다.

창 관리자는 마스크에 포함되지 않은 창 영역을 표시하도록 선택할 수도 있고 표시하지 않을 수도 있으므로 마스크에 포함되지 않은 영역을 투명하게 지우는 것은 애플리케이션의 책임입니다.

mask()도 참조하세요 .

void QWindow::setMaximumSize(const QSize &size)

창의 최대 크기를 설정합니다.

지정된 size 이상으로 크기가 조정되지 않도록 창 관리자에게 알려주는 힌트입니다.

setMinimumSize() 및 maximumSize()도 참조하세요 .

void QWindow::setMinimumSize(const QSize &size)

창의 최소 크기를 설정합니다.

지정된 size 이하로 크기가 조정되지 않도록 창 관리자에게 알려주는 힌트입니다.

setMaximumSize() 및 minimumSize()도 참조하세요 .

bool QWindow::setMouseGrabEnabled(bool grab)

마우스 잡기를 활성화할지 여부를 설정합니다(grab).

반환값이 참이면 창은 setMouseGrabEnabled(false)가 호출될 때까지 모든 마우스 이벤트를 수신하고, 다른 창은 마우스 이벤트를 전혀 수신하지 않습니다. 키보드 이벤트는 영향을 받지 않습니다. 이를 가져오려면 setKeyboardGrabEnabled()를 사용하세요.

setKeyboardGrabEnabled()도 참조하세요 .

void QWindow::setParent(QWindow *parent)

parent 창을 설정합니다. 이렇게 하면 창 클립을 관리하는 창 시스템이 parent 창에 클립되도록 합니다.

parentnullptr 으로 설정하면 해당 창이 최상위 창이 됩니다.

parentfromWinId()에 의해 생성된 창인 경우 플랫폼에서 지원하는 경우 현재 창이 parent 안에 포함됩니다.

parent()도 참조하세요 .

void QWindow::setPosition(const QPoint &pt)

바탕화면에서 창의 위치를 다음과 같이 설정합니다. pt

위치는 해당 화면의 가상 지오메트리()를 기준으로 합니다.

대화형으로 창을 이동하려면 startSystemMove()를 참조하세요. 창 크기를 대화형으로 조정하려면 startSystemResize()를 참조하세요.

참고: 모든 창 시스템이 최상위 창 위치 설정 또는 쿼리를 지원하는 것은 아닙니다. 이러한 시스템에서는 프로그래밍 방식으로 창을 이동해도 아무런 효과가 없을 수 있으며 QPoint(0, 0) 과 같은 인위적인 값이 현재 위치에 대해 반환될 수 있습니다.

position() 및 startSystemMove()도 참조하세요 .

void QWindow::setPosition(int posx, int posy)

바탕화면의 창 위치를 posx 로 설정합니다, posy

위치는 해당 화면의 가상 지오메트리()를 기준으로 합니다.

position()도 참조하세요 .

void QWindow::setScreen(QScreen *newScreen)

창이 표시될 화면을 설정합니다.

창이 생성된 경우 newScreen 에 창이 다시 생성됩니다.

참고: 화면이 여러 화면으로 구성된 가상 데스크톱의 일부인 경우 창은 newScreen 으로 자동으로 이동하지 않습니다. 화면을 기준으로 창을 배치하려면 화면의 topLeft() 위치를 사용하세요.

이 함수는 최상위 창에서만 작동합니다.

screen() 및 QScreen::virtualSiblings()도 참조하세요 .

void QWindow::setSizeIncrement(const QSize &size)

창의 크기 증분(size)을 설정합니다.

사용자가 창 크기를 조정할 때 크기는 baseSize()를 기준으로 가로로 sizeIncrement().width() 픽셀, 세로로 sizeIncrement().height() 픽셀 단위로 이동합니다.

기본적으로 이 속성에는 너비와 높이가 0인 크기가 포함됩니다.

창 시스템은 크기 증분을 지원하지 않을 수 있습니다.

sizeIncrement(), setBaseSize(), setMinimumSize() 및 setMaximumSize()도 참조하세요 .

void QWindow::setSurfaceType(QSurface::SurfaceType surfaceType)

창의 surfaceType 을 설정합니다.

창이 QBackingStore 을 사용한 래스터 렌더링용인지, QOpenGLContext 을 사용한 OpenGL 렌더링용인지 지정합니다.

surfaceTypecreate() 함수에서 네이티브 서페이스가 생성될 때 사용됩니다. 네이티브 서페이스가 생성된 후 이 함수를 호출하려면 destroy() 및 create()을 호출하여 이전 네이티브 서페이스를 해제하고 새 서페이스를 만들어야 합니다.

surfaceType(), QBackingStore, QOpenGLContext, create() 및 destroy()도 참조하세요 .

void QWindow::setVulkanInstance(QVulkanInstance *instance)

이 창을 지정된 벌칸 instance 과 연결합니다.

instanceQWindow 인스턴스가 존재하는 한 유효해야 합니다.

vulkanInstance()도 참조하세요 .

void QWindow::setWindowState(Qt::WindowState state)

창의 화면 점유 상태 설정하기

state 창은 창이 창 표시 시스템에서 최대화, 최소화, 전체 화면 또는 일반으로 표시되는지 여부를 나타냅니다.

열거형 값 Qt::WindowActive 은 허용되지 않는 매개변수입니다.

windowState(), showNormal(), showFullScreen(), showMinimized(), showMaximized() 및 setWindowStates()도 참조하세요 .

void QWindow::setWindowStates(Qt::WindowStates state)

창의 화면 점유 상태 설정하기

state 창은 창이 창 표시 시스템에서 최대화, 최소화 및/또는 전체 화면으로 표시되는지 여부를 나타냅니다.

창은 여러 가지 상태를 조합하여 표시할 수 있습니다. 예를 들어 창이 최소화 및 최대화 상태인 경우 창이 최소화 상태로 표시되지만 작업 표시줄 항목을 클릭하면 창이 최대화 상태로 복원됩니다.

열거형 값 Qt::WindowActive 을 설정해서는 안 됩니다.

windowStates(), showNormal(), showFullScreen(), showMinimized() 및 showMaximized()도 참조하세요 .

[slot] void QWindow::show()

창을 표시합니다.

하위 창의 경우 showNormal()를 호출하는 것과 같습니다. 그렇지 않으면 창 유형 및 플래그에 대한 플랫폼의 기본 동작에 따라 showFullScreen(), showMaximized() 또는 showNormal()를 호출하는 것과 같습니다.

showFullScreen(), showMaximized(), showNormal(), hide(), QStyleHints::showIsFullScreen() 및 flags()도 참조하세요 .

[virtual protected] void QWindow::showEvent(QShowEvent *ev)

이 함수를 재정의하여 표시 이벤트(ev)를 처리합니다.

이 함수는 창이 표시를 요청할 때 호출됩니다.

창 표시 시스템에 의해 창이 성공적으로 표시되면 크기 조정 및 노출 이벤트가 이어집니다.

[slot] void QWindow::showFullScreen()

창을 전체 화면으로 표시합니다.

setWindowStates(Qt::WindowFullScreen)를 호출한 다음 setVisible(true)를 호출하는 것과 동일합니다.

플랫폼별 고려 사항 및 제한 사항은 QWidget::showFullScreen() 문서를 참조하세요.

setWindowStates() 및 setVisible()도 참조하세요 .

[slot] void QWindow::showMaximized()

창을 최대로 표시합니다.

setWindowStates(Qt::WindowMaximized)를 호출한 다음 setVisible(true)를 호출하는 것과 동일합니다.

setWindowStates() 및 setVisible()도 참조하세요 .

[slot] void QWindow::showMinimized()

창을 최소화한 상태로 표시합니다.

setWindowStates(Qt::WindowMinimized)를 호출한 다음 setVisible(true)를 호출하는 것과 동일합니다.

setWindowStates() 및 setVisible()도 참조하세요 .

[slot] void QWindow::showNormal()

창을 최대화, 최소화, 전체 화면이 아닌 정상 상태로 표시합니다.

setWindowStates(Qt::WindowNoState)를 호출한 다음 setVisible(true)를 호출하는 것과 동일합니다.

setWindowStates() 및 setVisible()도 참조하세요 .

[override virtual] QSize QWindow::size() const

재구현합니다: QSurface::size() const.

창 프레임을 제외한 창 크기를 반환합니다.

resize()도 참조하세요 .

QSize QWindow::sizeIncrement() const

창의 크기 증분을 반환합니다.

setSizeIncrement()도 참조하세요 .

[slot] bool QWindow::startSystemMove()

시스템별 이동 작업 시작하기

이 함수를 호출하면 이를 지원하는 플랫폼에서 창에서 대화형 이동 작업이 시작됩니다. 실제 동작은 플랫폼에 따라 다를 수 있습니다. 일반적으로 마우스 버튼을 놓을 때까지 창이 마우스 커서를 따라 움직입니다.

이를 지원하는 플랫폼에서는 이 창 이동 방법이 setPosition 보다 선호되는데, 창 관리자가 이 창을 다른 창에 스냅하거나 화면 가장자리로 끌었을 때 애니메이션을 사용하여 특수 타일링 또는 크기 조정 동작을 하는 등 창 이동의 보다 자연스러운 모양과 느낌을 구현할 수 있기 때문입니다. 또한 Wayland와 같은 일부 플랫폼에서는 setPosition 이 지원되지 않으므로 애플리케이션이 위치에 영향을 줄 수 있는 유일한 방법입니다.

시스템에서 해당 작업이 지원되면 true를 반환합니다.

[slot] bool QWindow::startSystemResize(Qt::Edges edges)

시스템별 크기 조정 작업 시작

이를 호출하면 이를 지원하는 플랫폼별로 창에서 대화형 크기 조정 작업이 시작됩니다. 실제 동작은 플랫폼에 따라 다를 수 있습니다. 일반적으로 창 가장자리가 마우스 커서를 따르도록 창 크기를 조정합니다.

이를 지원하는 플랫폼에서는 이 창 크기 조정 방법이 setGeometry 보다 선호되는데, 창 관리자가 이 창을 다른 창에 스냅하거나 화면 가장자리로 끌면 애니메이션이 있는 특수 크기 조정 동작을 하는 등 창 크기 조정의 보다 네이티브한 모양과 느낌을 구현할 수 있기 때문입니다.

edges 는 단일 가장자리이거나 인접한 두 가장자리(모서리)여야 합니다. 다른 값은 허용되지 않습니다.

시스템에서 해당 작업이 지원되면 true를 반환합니다.

[override virtual] QSurface::SurfaceType QWindow::surfaceType() const

재구현합니다: QSurface::surfaceType() const.

창의 표면 유형을 반환합니다.

setSurfaceType()도 참조하십시오 .

[virtual protected] void QWindow::tabletEvent(QTabletEvent *ev)

태블릿 누르기, 이동 및 놓기 이벤트를 처리하려면 이를 재정의하세요(ev).

근접 입력 및 종료 이벤트는 창으로 전송되지 않고 애플리케이션 인스턴스로 전달됩니다.

[virtual protected] void QWindow::touchEvent(QTouchEvent *ev)

터치 이벤트를 처리하려면 이를 재정의합니다(ev).

Qt::WindowType QWindow::type() const

창의 유형을 반환합니다.

창이 대화상자인지, 툴팁인지, 팝업인지, 일반 창인지 등을 나타내는 창 플래그의 일부를 반환합니다.

flags() 및 setFlags()도 참조하세요 .

void QWindow::unsetCursor()

이 창의 기본 화살표 커서를 복원합니다.

QVulkanInstance *QWindow::vulkanInstance() const

연관된 벌칸 인스턴스가 설정된 경우, 그렇지 않으면 nullptr 을 반환합니다.

setVulkanInstance()도 참조하세요 .

[virtual protected] void QWindow::wheelEvent(QWheelEvent *ev)

마우스 휠 또는 기타 휠 이벤트를 처리하려면 이를 재정의합니다(ev).

WId QWindow::winId() const

창의 플랫폼 ID를 반환합니다.

참고: 이 함수는 플랫폼 창이 없는 경우 창을 생성합니다. 플랫폼 창 생성에 실패하면 0을 반환합니다.

이 ID가 유용할 수 있는 플랫폼의 경우 반환되는 값은 해당 화면 내부의 창을 고유하게 나타냅니다.

screen()도 참조하세요 .

Qt::WindowState QWindow::windowState() const

창의 화면 점유 상태

setWindowState() 및 windowStates()도 참조하세요 .

[signal] void QWindow::windowStateChanged(Qt::WindowState windowState)

이 신호는 setWindowStates()로 명시적으로 설정하거나 사용자가 제목 표시줄 버튼 중 하나를 클릭하거나 다른 방법으로 자동으로 windowState 가 변경될 때 발생합니다.

Qt::WindowStates QWindow::windowStates() const

창의 화면 점유 상태

창은 여러 가지 상태가 조합되어 있을 수 있습니다. 예를 들어 창이 최소화 및 최대화 상태인 경우 창이 최소화 상태로 표시되지만 작업 표시줄 항목을 클릭하면 창이 최대화 상태로 복원됩니다.

setWindowStates()도 참조하세요 .

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.