관리 메뉴

Value Creator의 IT(프로그래밍 / 전자제품)

#21 QT Dialog and widget and QMainWindow 차이점 본문

카테고리 없음

#21 QT Dialog and widget and QMainWindow 차이점

valuecreatort 2019. 6. 24. 18:58
반응형

Widget : 위젯은 화면에 표시 할 수있는 것을 목적으로한다. 예를 들어 윈도우 나 버튼. 그들은 모든 위젯 화면에 뭔가를 표시하고, 많은 사람들이 또한 키보드 또는 마우스에서 사용자의 입력을 받아 들일 것 등 버튼, 슬라이더, 뷰, 대화 상자, 창을 포함 디스플레이 및 사용자 상호 작용을 화면에 사각형 영역. 단어 "위젯"그들이 "컨트롤"이라고 Windows에서 유닉스에서 온다.

Dialog : 대화 상자가 항상 (즉, 다른 위젯에 넣을 수 없습니다) 별도의 창에 표시되는 최상위 위젯입니다.
윈도우의 특별한 종류, 그들은 등, 수도 있고 그들은 통보 또는 입력을 수집하기위한 목적으로 사용자에게 제공되는 다른 제목 표시 줄의 모양을 가지고하지 않을 수 있으며, 일반적으로 확인이 취소 보통 임시상의 버튼 .. 하단이나 오른쪽으로.


MainWindow : 메인 창에는 최상위 위젯이지만, 메뉴 바, 도구 모음 및 도킹 영역에 대한 상태 표시 줄과 장소를 포함하는 미리 정의 된 레이아웃을 가지고 있습니다. "최상위 수준"창이 부모 / 자식 관계의 계층의 선두입니다 위젯, 그리고 일반적으로 제목 표시 줄에 표시되고 창에 대한 정책을 제공 할 것입니다 기본 윈도우 시스템 (윈도우, KDE, GNOME 등) 국경. , 등 제목 표시 줄 / 테두리 스타일, 위치, 초점 등

결론 : 위 세 가지는 모두 위젯이다. MainWindow는 최상위 위젯이다. Dialog는 MainWindow의 특별한 종류이다.

 

 

[참고]

1. Widget

- 화면에 띄울 수 있는 개체 (ex, 버튼, 윈도우)

2. Dialog

- 최상위 위젯, 이것은 항상 다른 윈도우에 표시가 된다.(다른 위젯에 넣을 수 없다)

3. main window

- 메뉴바, 스테이터스 바, 도크 영역 등 미리 설정되어있는 최상위 위젯

[출처] [Python] Qt에서 Dialog, Main window, Widget의 관계|작성자 6년차 광달프

 

1. 대충 정리

결론적으로 말하면 다른건 뭐 없다 걍

QtWidgets.QWidget()

QtWidgets.QDialog()

QtWidgets.QMainWindow()

리턴 되는 값을 Application Object라고 하네

 

2. 조금 설명

Widget, Dialog, Main Window 모두 Widget이긴 한데, 위에서 설명한 것 처럼 기능적으로 다르다고 해야되나?

Main Windows는 상태바랑 메뉴바 같은 걸 넣을 수 있어 말그대로 Win32 API로 Application 만드는 거랑 똑같다고 보면 되겠고

Widget이랑 Dialog는 비슷해 Dialog가 좀더 Top-Level이긴하다는데? 이건 구글링해봐야 자세히 적을 듯



출처: https://kit2013.tistory.com/242 [정윤상이다.]

 

[원문]

A widget is an object that can be displayed on the screen. For example a window or a button.

A dialog is a top-level widget, that is always displayed in separate window (i.e. you can't put it on another widget).

A main window is also a top-level widget, but it has a predefined layout that includes a menu bar, a status bar and place for tool bars and dock areas.

Widget: A rectangular region on the screen for display and user interaction. They include buttons, sliders, views, dialogs, windows, etc. All widgets will display something on the screen, and many will also accept user input from the keyboard or mouse. The word "widget" comes from Unix, on Windows they are called "controls".

Window: A "top level" widget. A window is the top of a parent/child hiearchy, and are usually displayed with a titlebar and border. The underlying windowing system (Windows, KDE, GNOME, etc) will provide policies for the windows, such as titlebar/border style, placement, focus, etc.

Dialog: A special kind of window, usually temporary. They may or may not have a different titlebar appearance. They are presented to the user for the purpose of notification or gathering input, and typically have OK, Cancel, etc., buttons on the bottom or right.

The key here is that all of these are widgets, windows are the top-level widgets, and dialogs are a special kind of window.

반응형
Comments