본문 바로가기

파이썬-PySide6(PyQt6)19

[PySide6] QLabel을 클릭가능하게!? 지금까지의 내용을 요약하면, 안녕하세요? QLabel에 대한 설명을 간단하게 세 개의 포스팅에 걸쳐서 설명드렸습니다. 지금까지의 골자는, 기본적으로 이미 만들어진 틀(클래스)을 가져다 쓰기만 하면 되기 때문에(사실 그런 예제 밖에 안 보여드렸고...), 어떻게 임포트하고 어떻게 상속해서 어떻게 배치하는지, 이 정도만 알면 Qt GUI를 짜는 데 큰 걸림돌이 없다는 것이었습니다. 그런데... 이번 시간에는 그런데 이번 시간에는 진지하게 나름 상급기술을 하나 짚고 넘어가려고 합니다. 바로 QLabel에 클릭이벤트 붙이기! 전문용어로는, "클릭시그널이 없는 위젯에 클릭시그널 넣기" 정도? 영어로는 깔끔하게 "Making non-clickable widgets clickable"이라고 표현하네요. 조금 다뤄보시.. 2021. 8. 11.
[PySide6]QLabel로 QMainWindow 창에 이미지 삽입하기(3/3) QLabel 위젯 마지막 시간입니다. QLabel은 이름 그대로 레이블을 붙이는 간단한 위젯이라서, MainWindow에 붙이든 QWidget에 붙이든 사용은 간편합니다. widget = QLabel(text="Hello") 방식으로 위젯을 생성하고 VBox나 HBox로 레이아웃을 짜고 레이블 위젯을 배치하기만 하면 되니까요. 그리고 이 포스팅이 입문과정이라서 그렇지, 조금만 본격적으로 배워보실 마음이 있으면, 한땀한땀 코드로 짜는 과정은 얼른 건너뛰시게 될 거고, 결국 편리한 Qt 툴 검색해보시게 될 거고, QtCreator, QtDesigner, QtQuick, QtDesignStudio와 (조금 과장해서) 수십만원을 호가하는 Qt 전용 모듈과 툴들이 즐비한 마켓플레이스가 있다는 것에도 깜짝 놀라게 .. 2021. 8. 6.
[PySide6]QLabel 사용방법 2/3 지난 시간에 이어, QLabel 관련한 내용을 이어서 설명드리겠습니다. 복습 겸 지난 포스팅을 읽고 오시거나, 아래의 전체코드라도 한 번은 정독하고 포스팅을 읽어주셨으면 합니다. import sys from PySide6.QtCore import Qt from PySide6.QtWidgets import QApplication, QLabel, QMainWindow class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setWindowTitle("QLabel 예제") widget = QLabel("= == != Hello World!") font = widget.font() font.setPointSize(30) font.se.. 2021. 7. 11.
[PySide6]Qt 기본 중의 기본 위젯, QLabel 사용방법 천리길도 한걸음부터 저도 Qt를 공부하면서 무료하거나 지루함이 찾아올 때면 구글 검색창에 "The best qt design examples" 같은 문구로 검색을 하고 저런 프로그램 이미지들을 구경하곤 합니다. 기초교재의 예제들은 정말 재미가 없거든요ㅜ 완성해도 어딘가 멋지지 않고요. 그렇지만, 천리길도 한걸음부터니까요. 하나씩 차근차근 배운다는 느낌으로 공부해봅시다. 이번 시간에는 가장 쉬운 위젯, QLabel을 다뤄보겠습니다. 사실 지난 포스팅 중에 QLabel과 QLineEdit 위젯 두 가지를 같이 진행해본 예제가 있었습니다. 0. PySide6의 시그널-슬롯 활용예제: 다른 위젯을 슬롯으로 연결하기 PySide 시그널-슬롯 활용예제2 QLineEdit의 textChanged 시그널을 QLabel.. 2021. 7. 9.
PySide6 메모장 만들기: 열기, 저장 및 끝내기 구현 지난 시간에는 지난 시간에는 QtDesigner 내에서 ①파이썬 코드를 생성한 후 복사해서 파이참에 붙여넣는 방식으로 ui변환을 생략하고 파일을 직접 업데이트하는 방법을 보여드렸습니다. ②또한 "새 창(W)" 메뉴를 클릭했을 때 윈도우 인스턴스가 하나 더 생성되도록 시그널(triggered)과 슬롯(add_window메서드)을 연결하는 작업도 해보았고, 가장 중요하다고 할 수 있는 ③레이아웃과 플레인텍스트 위젯도 배치해보았습니다. 해당내용이 궁금하신 분은 아래 링크를 참고해주시기 바랍니다. 1. PySide6 메모장 만들기 - 위젯 추가하기 우린 지금 어디쯤? 지금 우리는 윈도우10의 기본프로그램 중 하나인 메모장을 PySide6로 클론코딩하는 작업을 진행하고 있습니다. 지난 포스팅에서는 메모장의 틀을 .. 2021. 4. 9.
1. PySide6 메모장 만들기 - 위젯 추가하기 우린 지금 어디쯤? 지금 우리는 윈도우10의 기본프로그램 중 하나인 메모장을 PySide6로 클론코딩하는 작업을 진행하고 있습니다. 지난 포스팅에서는 메모장의 틀을 만들고, 메뉴바를 완성했습니다. (아직 메뉴바에 기능을 구현하지는 않은 상태이고요.) 이번 두 번째 포스팅에서는 QtDesigner로 텍스트에디트 위젯을 추가하고 기본적인 기능을 구현하는 과정을 같이 진행해보려고 합니다. 포스팅 관련 궁금한 점은 댓글로 남겨주시면 답변 달아드리겠습니다. QtDesigner 여는 건 익숙해지셨나요? 이번 시간엔 파이참으로 디자이너를 열어봅시다. Alt-F12를 눌러 터미널을 연 후에, "pyside6-designer"라고 입력하고 엔터를 쳐보세요. 지난 번에 완성했던 ui파일을 아래 첨부해 둡니다. 다만, 디자.. 2021. 4. 1.
1. PySide6-QtDesigner, 윈도우메모장 클론코딩!!1/? + uic팁 지난 포스팅은... 1. PySide6의 QtDesigner를 사용해봅시다.(1/2) QtDesigner 실행해보기 pip를 통해 PySide6를 설치했다면, 파이썬폴더\Library\bin이나 파이썬폴더\Lib\site-packages\PySide6 폴더 안에 designer.exe(또는 pyside6-designer.exe)가 같이 설치되어 있습니다. 귀.. www.martinii.fun 이번 시간부터는: QtDesigner로 윈도우 메모장 클론코딩 아무리 마음가는대로 튜토리얼을 짓는다지만, 이렇게 해도 되나 싶기는 합니다. 원래는 디자이너 가볍게 잡고 Qt+Matplotlib 시각화나, Qt+Pandas 스프레드시트 쪽으로 진행하고 싶었는데, 너무 밑천을 일찍 드러내는 거 아닌가 싶어 이렇게 결정하.. 2021. 3. 29.
1. PySide6의 QtDesigner를 사용해봅시다. QtDesigner 실행해보기 pip를 통해 PySide6를 설치했다면, 파이썬폴더\Library\bin이나 파이썬폴더\Lib\site-packages\PySide6 폴더 안에 designer.exe(또는 pyside6-designer.exe)가 같이 설치되어 있습니다. 귀찮다면 시작버튼을 누르고 "designer"를 입력하면 아래와 같이 프로그램 목록에 하나 튀어나올 것입니다. 최초 실행화면은 아래와 같습니다. (조금 부족한 듯 싶지만,) 지금까지 PySide에 대한 튜토리얼을 통해 QWidget이나 QMainWindow를 상속한 GUI창을 만들어보았습니다. 간단한 창이라면 코드를 사용해서 제작하는 걸로도 충분하지만, 어느 정도 규모를 넘어서거나, 섬세한 사이즈조절을 하기 위해서는 코드만으로는 까다로운.. 2021. 3. 29.
0. PySide6의 시그널-슬롯 활용예제: 다른 위젯을 슬롯으로 연결하기 PySide 시그널-슬롯 활용예제2 QLineEdit의 textChanged 시그널을 QLabel.setText 슬롯과 연결하기 안녕하세요? 이번 포스팅을 시작하기 전에 지난 포스팅에서 작성했던 코드를 최대한 간단히 요약해서 다른 사람에게 설명하려면 뭐라고 하시겠어요? 참고하시라고 지난 번 작성한 코드를 여기 적어볼게요. from PySide6.QtWidgets import QApplication, QMainWindow, QPushButton class MainWindow(QMainWindow): def __init__(self): super(MainWindow, self).__init__() self.button = QPushButton(parent=self) self.setCentralWidget(s.. 2021. 3. 28.