5.11. 애드온 GUI 고급 기능


pyanaconda 패키지에는 허브 및 발표자가 사용할 수 있는 몇 가지 도우미 및 유틸리티 기능이 포함되어 있습니다. 대부분은 pyanaconda.ui.gui.utils 패키지에 있습니다.

샘플 Hello World 애드온은 Anaconda 에서도 사용하는 englightbox 콘텐츠 관리자의 사용을 보여줍니다. 이 콘텐츠 관리자는 창을 Lightbox에 배치하여 가시성을 높이고 사용자가 기본 창과 상호 작용하지 못하도록 할 수 있습니다. 이 기능을 설명하기 위해 샘플 애드온에는 새 대화 상자 창을 여는 버튼이 포함되어 있습니다. 대화 상자 자체는 pyanaconda.ui.gui.init 에 정의된 GUIObject 클래스에서 상속하는 특수 HelloWorldDialog 상속입니다.

대화 상자 클래스는 동일한 의미의 mainWidgetName 클래스 특성을 사용하여 채워지는 self.window 특성을 통해 액세스할 수 있는 내부 Gtk 대화 상자를 실행하고 삭제하는 run 메서드를 정의합니다. 따라서 다음 예와 같이 대화 상자를 정의하는 코드는 매우 간단합니다.

예 5.4. englightbox 대화 상자 정의

        # every GUIObject gets ksdata in init
        dialog = HelloWorldDialog(self.data)

        # show dialog above the lightbox
        with self.main_window.enlightbox(dialog.window):
            dialog.run()
Copy to Clipboard Toggle word wrap

englightbox 대화 상자 예제 코드를 정의하면 대화 상자의 인스턴스가 생성된 다음 enlightbox 컨텍스트 관리자를 사용하여 Lightbox 내에서 대화 상자를 실행합니다. 컨텍스트 관리자의 대화 상자 창에 대한 참조가 있으며 대화 상자를 인스턴스화하기 위해 대화 상자만 있으면 됩니다.

맨 위로 이동
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2025 Red Hat