반응형 Python112 [PyQT5] UI Designer 에서 Grid Layout 배치 해보기 PyQT5 Designer Grid Layout 이전에 하던 Window 에 Tab Widget 안에 Grid Layout 을 추가합니다. 이전 포스트 참고 [PyQT5] UI Designer 에서 리사이즈 시 같이 확장하기 [PyQT5] UI Designer 에서 Tab Widget 생성 하기 Tab Widget 의 Tab 중에 Grid Layout 을 추가해줍니다. 그리고 사이즈를 같이 늘어나게 하기 위해서 배치를 설정해 줍니다. Grid Layout 의 Parent 인 Tab 에서 우클릭을 합니다~ Grid Layout 에 Widget 추가하기 Label 을 추가 두번째 Label 추가 이렇게 Grid 처럼 추가가 됩니다. 이번에는 세번째 Label 을 아래에 추가해 봅니다. 이렇게 추가되었습니다... 2022. 3. 24. [PyQT5] UI Designer 에서 Tab Widget 생성 하기 PyQT5 Tab Widget Main Window 에 Tab Widget 을 가득 채우도록 하려면 이전 포스트를 보고, 배치를 설정하세요. [PyQT5] UI Designer.exe 에서 리사이즈 시 같이 확장하기 Tab 은 기본적으로 Tab 1, Tab 2 가 생성됩니다. Tab 이름 변경 Tab 추가 Tab 삭제 2022. 3. 24. [PyQT5] UI Designer 에서 리사이즈 시 같이 확장하기 PyQT Designer Expanding 수평확장, 수직확장 Designer 를 실행하고 Window 를 선택합니다. 그리고 좌측 위젯에서 tab 을 입력해서 Tab Widget 을 선택하여 window 에 배치 시킵니다. 객체 탐색기에 아래와 같은 표시가 생깁니다. 미리보기로 실행해서 리사이즈를 해봅니다. Tab Widget 은 사이즈가 늘어나지 않습니다. 같이 늘어나게 하려면, 수평으로 배치 와 수직으로 배치 중 하나를 클릭 해줍니다. 그럼 객체 탐색기에 차단 아이콘 같은게 사라지게 됩니다. 그리고 미리보기를 해서 다시 리사이즈를 해보면, 사이즈를 늘리니, 내부의 Widget 도 같이 늘어납니다. 2022. 3. 24. opencv-python 설치 시 오류 (Could not build wheels for opencv-python which use PEP 517 and cannot be installed directly) Failed building wheel for opencv-python Running setup.py clean for opencv-python Failed to build opencv-python Could not build wheels for opencv-python which use PEP 517 and cannot be installed directly new environment 에 설치하는데 저런 오류가 발생합니다. 구글링 해보니, 대부분 해결책이 pip install --upgrade pip setuptools wheel 이렇게 하고, 다시 아래처럼 install 하면 해결된다고 하는데요.. pip install opencv-python 전 첫번째 명령어도 실행하는데 오류가 발생합니다. 오류.. 2022. 3. 22. [PyQT5] 처음부터 따라하기 #4. ui component binding PyQT5 따라하기 #4 UI Components Binding Python 에서 UI Component 사용하기 이전 글에 이어서 소스에 추가를 하겠습니다. self.window = loader.load(ui_file) 이렇게 window 를 load 했다면, 바인딩 하는 코드는 self.my_line_edit = self.window.findChild(QLineEdit, objectName) # 여기서 objectName 은 designer.exe 에서 설정한 objectName 입니다. 바인딩 저는 편하게 쓰기 위해서 private 함수를 만들어봤습니다. def __bindQLineEdit(self, objectName): return self.window.findChild(QLineEdit, ob.. 2022. 3. 17. [PyQT5] 처음부터 따라하기 #3. UI 파일을 Python에서 실행하기 PyQT5 따라하기 #3 .ui 실행 in Python .UI 파일로 Python 에서 실행 이전 포스트에서 designer.exe 를 이용해 ui 파일을 만들었습니다. 이 ui 파일을 python project 에 복사합니다. test.py 와 ui 파일이 같은 경로에 있다고 한다면, 기본적으로 화면을 띄우는 소스는 아래와 같습니다. test.py import sys from PySide2.QtWidgets import QApplication from PySide2.QtCore import QFile, QObject from PySide2.QtUiTools import QUiLoader UI_FILE_PATH = './PdfExtractorUI.ui' class App(QObject): def __in.. 2022. 3. 17. [PyQT5] 처음부터 따라하기 #1. 프로젝트 생성 및 설치 PyQT5 따라하기 #1 1. 프로젝트 생성 파이참에서 File > New Project 클릭. 프로젝트 명 입력하고 New environment 로 생성합니다. Create 클릭~ 2. PyQT5 설치 pip install PyQt5 3. PyQT Designer 를 사용하기 위한 Pyside 설치 pip install pyside2 혹시 pip install 하는 도중에 아래와 같은 오류가 난다면, 이 글 참고하세요. 설치가 완료되면, 아래 경로에 designer.exe 파일이 보입니다. 우클릭 해서 Show in Explorer 를 누릅니다. 이 designer.exe 파일의 바로가기를 만들어서 바탕화면에 두시면 편합니다. 저 exe 를 실행하면 PyQT UI Design tool 이 뜹니다. 2022. 3. 16. [Python] AttributeError: 'NoneType' object has no attribute 'bytes' 오류 해결 pip install 중 뜬금없이 이런 오류가 발생합니다. Exception: Traceback (most recent call last): File "c:\users\combr\pycharmprojects\pdfextractor\venv\lib\site-packages\pip-19.0.3-py3.7.egg\pip\_internal\cli\base_command.py", line 179, in main status = self.run(options, args) File "c:\users\combr\pycharmprojects\pdfextractor\venv\lib\site-packages\pip-19.0.3-py3.7.egg\pip\_internal\commands\install.py", line 393.. 2022. 3. 16. [Python] [Streamlit 사용법] 4. session_state Streamlit session_state session 과 같은 개념입니다. 기본 사용법 / 초기화 import streamlit as st st.session_state['user_name'] # 오류!! 해당 key 가 존재하지 않은데 사용할 경우, 이와같이 오류가 발생합니다. 초기화 방법 if 'user_name' not in st.session_state: st.session_state['user_name'] = '' key 체크를 먼저 해주고 기본값을 입력하면 됩니다. 아래와 같이, dictionary 방법과 attribute 방법 모두 사용할 수 있습니다. import streamlit as st if 'user_name' not in st.session_state: st.session_st.. 2022. 2. 22. [Python] [Streamlit 사용법] 3. button Streamlit Button 기본적인 사용법 import streamlit as st st.title("Streamlit Test") input_user_name = st.text_input(label="User Name", value="default value") if st.button("Confirm"): con = st.container() con.caption("Result") con.write(f"Hello~ {str(input_user_name)}") st.button() 은 True, False 를 리턴합니다. btn_clicked = st.button("Confirm") st.write(btn_clicked) 클릭하기 전(페이지 로딩)에는 False 를 찍고, 버튼을 클릭하면 True 를.. 2022. 2. 22. 이전 1 2 3 4 5 6 7 8 ··· 12 다음 728x90 반응형