파이썬에서 stdout을 pyqt5 로 리다이렉션 하는 법을 설명 드리겠습니다. 크게 요약드리자면 sys.stdout.write를 textBrowser의 insertPlainText 메소드로 연결 시키는 방법입니다. 우선 아래 처럼 StdoutRedirect 클래스를 만들어 줍니다. 그리고 시그널을 생성해야 합니다. 아래코드는 start method 가 불리면 sys.stdout.write (또다른 말로는 print) 가 불릴 때 마다, printOccur 시그널을 emit하는 클래스 입니다. 1234567891011121314151617181920class StdoutRedirect(QObject): printOccur = pyqtSignal(str, str, name="print") def __ini..
QT프로그래밍을 하실 때 한 위젯에다가 모든 버튼 / 기능을 넣어 버리면 나중에 관리하기가 무척 힘들어 집니다. 그런 상황을 대비해서 각각 기능 별로 Widget을 만들어 놓고, MAIN 에서 관리 하는것이 좋은데요 ,,,, 모든걸 소스코드로 상속 받아서 구현하기는 너무 힘들 겁니다. 그리고 남들이 만들어 놓은 위젯을 가져다 쓰기도 쉽진 않지요. 이런 경우에 이미 QT디자이너나 qtcode로 작성된 코드를 QT designer에서 직접 상속받아 사용을 할 수 있습니다. 어떻게 widget 을 만들고 QTDesigner에서 어떻게 가져다 쓸 수 있는지 설명 드리겠습니다. 이미 누군가 만들어 놓은 ui / pyqt code 를 QT designer에서 상속받아 사용해 보겠습니다. 아래 처럼 consolevi..
요약드리자면 self.fontComboBox.currentFontChanged.connect(lambda x : self.plainTextEdit.setFont(x)) 한줄이 핵심입니다. fontcombobox의 시그널과 plaintextedit의 슬롯만 연결해주면 됩니다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'fontcombobox.ui'## Created by: PyQt5 UI code generator 5.10.1## W..
python 에서 lambda 함수가 지원된다는 것을 대부분 알고 계실겁니다. 다만 이걸 어떻게 활용할 수 있는가 의문이 들긴 시작합니다. (초급개발자 대상) 이론적으론 1줄함수를 구현할 때 코드의 가독성을 높여준다 정도로 설명을 하는 곳이 많은데, 실제로 활용 될 수 있는 방법을 설명 할게요. 저 같은 경우는 python api 중 function을 인자로 받는 api에다가 함수+해당함수의 input param을 넘겨 줄 때 사용합니다. 예제를 한번 보도록 하겠습니다. 아래 코드는 아래 사진처럼 button 2개, text box 1개를 생성하는 코드입니다. 일반적으로 Button 함수에서 버튼을 눌렀을 때 실행되는 함수를 command= 인자로 받습니다. 다만 이때 함수는 인자값이 없어야만 tkint..
개인적인 툴을 제작 하던 중에, 파이썬 소스코드를 읽어와서 QPlainTextEdit 로 보여주어야 할 일이 생겨서 코드를 만들었습니다. (만들었다기 보단 인터넷에 있는걸 합쳐놨어요. 두개가 분리되있어서 조금 귀찮긴 하더라고요) 출처(view line, selection color) : https://stackoverflow.com/questions/40386194/create-text-area-textedit-with-line-number-in-pyqt출처(syntax highlighting) : https://wiki.python.org/moin/PyQt/Python%20syntax%20highlighting codeeditor.py 를 qtdesigner 에서 promote 시켜서 사용 하시면 됩니..
python 으로 좀 큰 프로젝트를 하시는 분들은 쉽게쉽게 exe 파일이 생성이 안되는걸 종종 경험 하셨을 겁니다. 제가 사용하는 방법은 pyinstaller 를 사용해서 여러 패키지가 포함된 프로젝트를 exe 빌드 하는 법을 설명 드리겠습니다. (이 글을 보신분들은 기본적으로 pyinstaller 를 한번이라도 써보신 분들 대상입니다) 가장 기본적으로 컴파일 하는 방법은 1. .spec 파일 작성 ( pyinstaller build 스크립트 ) 2. pyinstaller blahblah.spec입니다. 우선 아래 코드는 제가 실제로 사용하는 pyinstaller 인스톨 용 스크립트 파일입니다. 1234567891011121314151617181920212223242526272829303132333435..
cf_Freeze 를 사용할 때, 개인적으로 만든 패키지가 추가가 안되서 실행이 보통 안될겁니다. 아래 처럼 includes = [...] 에다가 개발자 분이 추가한 pacakge 명을 넣어주시면 됩니다.from cx_Freeze import setup, Executable # Dependencies are automatically detected, but it might need # fine tuning. buildOptions = dict(packages = ["sys","os"], excludes = [], includes = ["gui.consolewindows", "gui.controlwindows", "gui.imageview", "gui.testview", "multiprocessing.po..
임베디드 개발자는 파이썬 같은걸 보통 쓸일이 없다 생각 하실거에요. 하지만 아래 아주 좋은 글을 찾아봤네요.주로 user embedded system 간의 통신에서 아주 강력하게 사용될 수 있다는 글입니다. 실제로 저같은 경우도 통신 및 데이터 뽑아내기 용으로 아주 잘 사용하고 있는 중입니다.임베디드 개발자는 C/C++, 어셈블리 만 해야해 !! 한다고 생각하시면 한번쯤 읽어보시는게 좋을 것 같습니다. Python vs. C/C++ in embedded systems The pros and cons of each, and why you should consider Python for embedded programming. opensource.com https://opensource.com/life/16/..
- Total
- Today
- Yesterday
- Python
- 공유기설정
- a1000 mini
- 속도
- SQ인증 #동양열처리 #시화공단 #안산 #시흥 #금속열처리 #열처리
- exe없이 파이썬 배포
- py 실행환경
- iptime
- 무선랜카드
- 파이썬 배포판
- 가상환경
- 파이썬
- python 실행환경 배포
- 파이썬배포
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |