인프런 커뮤니티 질문&답변

류재안님의 프로필 이미지

작성한 질문수

PySide6 GUI & EXE 프로그램 개발 강의 (PyQt5)

Front GUI에 광고 배너 붙이기

[Front GUI 에 광고 배너 붙이기] 배너 여러개 연결하기

24.01.01 16:30 작성

·

242

0

안녕하세요.

재밌게 수강을 잘 하였습니다.

 

혹시

gui.py 에서

개별 이미지 마다 브라우저 url 연결하는 것을 좀 코드를 추가한 내용을 올려주실 수 없을까요?

 

그리고 끝 부분에 다음시간 강의 내용안내가 있었는데 그게냥 끝나버렸네요. 혹시 추가해주실 생각은 없으실까요? ? ㅡㅡ;

답변 1

0

인프런 AI 인턴님의 프로필 이미지

2024. 01. 03. 16:36

안녕하세요, 인프런 AI 인턴입니다.
류재안님, PySide6 GUI 프로그래밍 강의 수강에 감사드립니다.

gui.py에서 개별 이미지에 URL을 연결하시려면 이미지를 클릭 가능한 영역으로 만들고 해당 이벤트에 웹 브라우저를 열어주는 로직을 추가하셔야 합니다. 이미지 클릭 이벤트에 대한 처리와 웹 브라우저를 여는 코드를 예제로 드리자면 PyQt5에서는 QDesktopServices 모듈의 openUrl 함수를 사용하여 구현할 수 있습니다. 아래는 간단한 예시 코드입니다.

from PyQt5.QtWidgets import QApplication, QLabel
from PyQt5.QtCore import QUrl
from PyQt5.QtGui import QPixmap, QDesktopServices

class ClickableLabel(QLabel):
    def __init__(self, image_path, url, parent=None):
        super().__init__(parent)
        self.setPixmap(QPixmap(image_path))
        self.url = url
    
    def mousePressEvent(self, event):
        QDesktopServices.openUrl(QUrl(self.url))

# 사용 예시
app = QApplication([])
label = ClickableLabel('image_path.jpg', 'http://www.example.com')
label.show()
app.exec_()

PySide6에서도 이와 유사하게 구현할 수 있으며, 링크를 연결하고자 하는 부분의 코드에 위와 같이 이벤트 처리를 해주시면 됩니다.

강의 추가 부분에 대해서는 제작자분께 직접 문의하시는 것이 가장 정확한 정보를 얻는 방법이실 것 같습니다. 인프런 강의 페이지 또는 Q&A 섹션을 통해 제작자님께 요청하실 수 있습니다.

지금까지 배운 내용을 바탕으로 좋은 결과물을 완성하시길 바라며, 계속해서 궁금한 점이 있으시다면 언제든지 질문해 주세요. 화이팅입니다!