Programming/PyQt
-
[PyQt] (내가 기억하기 위해 정리하는) Qt Designer 간단한 UI 프로그램 편집 순서Programming/PyQt 2023. 1. 5. 22:48
가끔 테스트 등을 위해 간단한 ui 툴을 만들어야 할 때가 있다. PyQt로 뚝딱 만들면 되는데 ui는 Qt Designer로 짜는게 가시적이고 편해서 ui 파일을 만들고 pyqt 코드에서 uic import하는 방법으로 사용중이다. 오늘은 Qt Designer에서 간단한 ui 짜는 방법을 정리해 본다. Qt 입문자나 초보자 분들께도 전반적인 내용을 이해할 때 유용하리라 생각이 든다. 순서 1. 종이에 ui 설계해보기 곧바로 컴퓨터로 ui를 짜기보다 종이에 미리 설계를 해놓는 편이 빠르다. 어떤 내용이 들어가야 하는지, ui 배치는 어떻게 할 것인지 등 러프하게 스케치한다. 2. Qt designer에서 ui 그리기 1) 위젯 선택 Qt에는 위젯이라는 것들이 있다. (위 그림에서 왼쪽에 배치된 내용들) ..
-
[VS Code + Python + PyQt5] Python 확장의 디버거는 3.7이전의 Python 버전을 더 이상 지원하지 않습니다. (파이썬 버전 변경 후 라이브러리 오류)Programming/PyQt 2022. 12. 14. 17:41
기존에 vs code에서 python 3.6버전으로 pyqt5 작업을 하고 있었다. 근데 어느 순간 갑자기 빌드가 안됨... 3.6 버전은 지원 안해준다고 함 .. 하는 수 없이 3.7버전으로 올려야 하는 상황. 윈도우 기준 F1 키를 눌러서 인터프리터라는 녀석을 변경해준다. 🔽관련내용 [python] Visual Studio code 파이썬 인터프리터 변경 (tistory.com) [python] Visual Studio code 파이썬 인터프리터 변경 요약 1. Ctrl + Shift + P 키 클릭 2. "Select interpreter" 타이핑 후 엔터 3. 인터프리터 리스트 중 사용할 인터프리터를 클릭 상세 파이썬 편집기를 VS code를 사용하고 있습니다. 웹 크롤러를 requests 라이브..
-
Qt Designer 사용하여 UI 제작 정리Programming/PyQt 2022. 10. 7. 14:18
push button에 마우스를 올리면 색상이 변하는 디자인 🔽style sheet에 입력 QPushButton{background-color: rgb(75, 75, 75); selection-color: rgb(255, 255, 255); color: rgb(255, 255, 255); border: 1px solid #ffffff; border-radius: 3px; padding-right: 5px; padding-left: 5px; padding-top: 5px; padding-bottom: 5px; } QPushButton:hover { background-color: rgb(125,125,125); border: 0px solid #ffffff; } 마우스를 올리면 버튼 색상이 약간 밝아지고 ..
-
[VSCode+Python] 갑자기 VS Code에서 python 실행 안 될때Programming/PyQt 2022. 7. 11. 10:48
[증상] 어제까지만 해도 잘 되던 vs code에서 python실행하는 것이 갑자기 run(디버깅)이 되지 않았음. 어떤 오류, 에러 메세지도 없이 그냥 실행 자체가 안됨. 원인을 찾기 위해 cmd.exe에서 파이썬을 실행해보고 vs code 아래에서 python을 실행해봄 -> 둘 다 잘 됨. [원인(추측)] vs code - python간의 링크가 문제가 생겨서 (vs code 자동 업데이트 등의 문제) [해결 방법] VS Code 왼쪽 카테고리>Extensions에서 python검색. 1번 Switch to Pre-Release Version을 클릭하면 2번의 Reload Required 버튼이 생긴다. 2번 Reload Required를 다시 눌러주고 실행하면 잘 됨. 버전 문제였는듯?
-
QMediaPlayer 재생이 안 될 때 해결방법Programming/PyQt 2022. 6. 29. 16:44
[Solved][PyQt5] DirectShowPlayerService::doRender: Unresolved error code 0x8040266 (IDisspatch error #102) - Clay-Technology World (clay-atlas.com) [Solved][PyQt5] DirectShowPlayerService::doRender: Unresolved error code 0x8040266 (IDisspatch error #102) - Clay-Technology Wor Today when I using PyQt5 framework to build a video player service, I got an error message at QMediaPlayer: DirectShowPla..
-
[PyQt] MediaPlayer, GraphicsView Size가 안 맞는 문제 해결Programming/PyQt 2022. 6. 16. 16:07
self.videoitem = QGraphicsVideoItem() self.videoitem.setPos(0,0) self.videoitem.setSize(QSizeF(1280,720)) self.rectitem = QGraphicsRectItem(self.videoitem) Qt5 C++ QGraphicsView: Images don't fit view frame - Stack Overflow Qt5 C++ QGraphicsView: Images don't fit view frame I'm working on program which shows user some picture that is selected by him. But there is a problem because I would like t..
-
[PyQt] QMediaPlayer, QGraphicsView, QGraphicsScene에서 마우스 좌표가 이상한 문제 해결 (mainwindow에서 widget불러오기)Programming/PyQt 2022. 6. 7. 18:32
비디오 영상을 재생하고 그 위에 ROI를 그려서 ROI위치를 export하는 프로그램을 만들고 있다. MainWindow에서 모든 위젯들을 다 만들고 graphicsView위에 그림을 그리는데 그림도 안그려지고(배경 ui에서만 그려짐) 좌표도 이상했다. mouseMoveEvent, mousePressEvent -> 이런 녀석들의 인자인 event(또는 e)는 해당 클래스를 기준으로 하기 때문에 메인윈도우에서 위의 함수를 사용하면 메인윈도우의 좌표가 나온다. 나는 로컬 위젯의 좌표를 원했기 때문에 클래스를 새로 만들어서 해당 위젯의 좌표만을 사용할 것이다. class MyWindow(QMainWindow, ui): def __init__(self, parent =None): super(MyWindow,se..
-
[PyQt]QMediaPlayer로 Video Player만들기 (not use Pixmap)Programming/PyQt 2022. 5. 31. 10:53
QPixmap와 OpenCV 함수를 사용하여 비디오 영상을 표시하면 체감상 느려졌기 때문에 QMediaPlayer를 사용해보았는데 생각보다 간편하였다. (간단하게 비디오를 재생가능하고 play, pause, stop등 기능을 편리하게 사용할 수 있음) 코드는 아래 링크들을 참고하였고 UI에서 (Designer 에서) QWidget으로 먼저 만들고 나서 QVideoWidget으로 승격해주면 된다.(아래 사진 참고, 헤더파일 입력하는 부분!!) 헤더파일은 PyQt5.QtMultimediaWidgets 철자 주의! 그 후에 코드상에서 QMediaplayer함수들 사용가능하다. QMediaPlayer Class | Qt Multimedia 5.15.9 QMediaPlayer Class | Qt Multimedi..
-
[PyQt] Python에서 ffmpeg 관련 error 해결Programming/PyQt 2022. 5. 26. 13:56
ffmpeg을 이용한 간단한 툴을 만드는 중 VS code python에서 계속 ffmpeg 오류가 났는데 하루만에 해결. 에러유형 filenotfounderror: [winerror 2] 지정된 파일을 찾을 수 없습니다 "ffmpeg" ffmpeg.run() 에서 stream_spec 없다고 에러 등등.. 참고 FileNotFoundError: [WinError 2] · Issue #392 · kkroening/ffmpeg-python (github.com) FileNotFoundError: [WinError 2] · Issue #392 · kkroening/ffmpeg-python import ffmpeg from glob import glob if glob("input.mp4"): stream = ..