Python QT 구성 요소 라 이브 러 리 qtwidgets 사용
최근 주 씨 는 데스크 톱 그래 픽 인터페이스의 로그 인 암호 상 자 를 쓰 는 과정 에서 작은 사용자 정의 구성 요소 라 이브 러 리 를 발견 했다.
현재 암호 입력 상자 구성 요소,그 라 데 이 션 구성 요소,이퀄 라이저 구성 요소,팔레트 구성 요 소 를 제공 합 니 다.
설치 하 다.
pip 도 구 를 직접 사용 하여 설치 하면 됩 니 다.명령 은 다음 과 같 습 니 다.
pip install qtwidgets
암호 입력 상자PyQt 5 와 PySide 2 에서 저 희 는 보통 QLine Edit()위 젯 을 사용 합 니 다.EchoMode 속성 을 설정 하여 입력 한 텍스트 에 명문 이 아 닌 별 번 호 를 표시 합 니 다.코드 는 다음 과 같 습 니 다.
# encoding:utf-8
from PySide2 import QtWidgets
import sys
class Widget(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle(" -zmister.com")
self.pwd_input = QtWidgets.QLineEdit(self)
self.pwd_input.setEchoMode(QtWidgets.QLineEdit.Password)
def main():
app = QtWidgets.QApplication(sys.argv)
gui = Widget()
gui.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
실행 후의 효 과 는 다음 과 같다.현대 로그 인 인터페이스 에서 기본적으로 비밀 번 호 를 입력 한 다음 단 추 를 통 해 사용자 가 입력 한 비밀 번 호 를 볼 수 있 도록 하 는 것 은 흔 한 기능 이다.
QLine Edit()구성 요 소 를 기반 으로 확장 하려 면 많은 시간 과 코드 가 필요 합 니 다.qtwidgets 모듈 을 빌 리 면 우 리 는 바퀴 를 조금 덜 만 들 수 있 습 니 다.
from PySide2 import QtWidgets
from qtwidgets import PasswordEdit
import sys
class Widget(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle(" -zmister.com")
# self.pwd_input = QtWidgets.QLineEdit(self)
self.pwd_input = PasswordEdit()
self.setCentralWidget(self.pwd_input)
def main():
app = QtWidgets.QApplication(sys.argv)
gui = Widget()
gui.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
qtwidgets 가 제공 하 는 암호 입력 상자 의 효 과 를 보십시오:암호 입력 상 자 를 제외 하고 qtwidgets 는 몇 개의 확장 구성 요 소 를 제공 합 니 다.
그 라 데 이 션 모듈
그 라 데 이 션 구성 요소 Gradient()는 응용 프로그램의 선형 그 라 데 이 션 을 디자인 하 는 데 편리 한 인터페이스 를 제공 합 니 다.대상 의 인 스 턴 스 만 만 들 면 새로운 그 라 데 이 터 를 만 들 수 있 습 니 다.
from PySide2 import QtWidgets
from qtwidgets import PasswordEdit,Gradient
import sys
class Widget(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle(" -zmister.com")
self.gradient = Gradient()
self.setCentralWidget(self.gradient)
def main():
app = QtWidgets.QApplication(sys.argv)
gui = Widget()
gui.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
기본 그 라 데 이 션 색상 은 검은색 에서 흰색 입 니 다.정지 점 은 빨간색 상 자 를 사용 하여 표 시 를 합 니 다.인 볼 류 트 구성 요 소 를 만 든 후에 우 리 는 그래 픽 인터페이스 에서 편집 할 수 있 습 니 다.
4.567917.그 라 데 이 터 를 두 번 클릭 하면 태그 점 을 추가 할 수 있 고 그 색 은 오른쪽 색 과 일치 합 니 다4.567917.태그 점 을 드래그 하면 그 라 데 이 션 의 범위 와 위 치 를 바 꿀 수 있 습 니 다4.567917.새 태그 점 을 오른쪽 클릭 하면 태그 점 의 색 을 편집 할 수 있 습 니 다
팔레트
qtwidgets 는 세 가지 팔레트 를 제공 합 니 다.각각:
수평 팔레트 Horizontal수직 팔레트 수직
from PySide2 import QtWidgets
from qtwidgets import PasswordEdit,Gradient,PaletteGrid,PaletteHorizontal,PaletteVertical
import sys
class Widget(QtWidgets.QMainWindow):
def __init__(self):
super().__init__()
self.setWindowTitle(" -zmister.com")
self.palette_1 = PaletteGrid('category10')
self.palette_2 = PaletteHorizontal('17undertones')
self.palette_3 = PaletteVertical(['#000003', '#160B39', '#410967', '#6A176E', '#932567', '#BA3655', '#DC5039', '#F2751A', '#FBA40A', '#F6D542', '#FCFEA4'])
self.palette_1.selected.connect(self.selected_color)
self.label = QtWidgets.QLabel(" :")
self.widget = QtWidgets.QWidget()
self.widget_layout = QtWidgets.QVBoxLayout()
self.widget.setLayout(self.widget_layout)
self.widget_layout.addWidget(self.palette_1)
self.widget_layout.addWidget(self.palette_2)
self.widget_layout.addWidget(self.palette_3)
self.widget_layout.addWidget(self.label)
self.setCentralWidget(self.widget)
def selected_color(self,value):
self.label.setText(" :{}".format(value))
def main():
app = QtWidgets.QApplication(sys.argv)
gui = Widget()
gui.show()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
실행 효 과 는:마지막.
동적 시각 화 출력 주파수 변화 에 사용 되 는 이퀄 라이저 구성 요소 도 있 습 니 다.여기 서 는 보 여주 지 않 고 관심 있 는 파트너 가 직접 시도 해 볼 수 있 습 니 다.
그 밖 에 모든 구성 요소 도 Qt 기 존 구성 요 소 를 기반 으로 한 패 키 징 입 니 다.여력 이 있 는 파트너 는 Qt 각 네 이 티 브 구성 요소 에 대한 이 해 를 강화 하기 위해 소스 코드 를 확인 할 수 있 습 니 다.
글 판권 소유:주의 선생 블 로그전재 출처 및 원문 링크 유지
주소
이상 은 Python QT 구성 요소 라 이브 러 리 qtwidgets 의 사용 에 대한 상세 한 내용 입 니 다.Python qtwidgets 라 이브 러 리 에 대한 자 료 는 다른 관련 글 을 주목 하 십시오!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Python의 None과 NULL의 차이점 상세 정보그래서 대상 = 속성 + 방법 (사실 방법도 하나의 속성, 데이터 속성과 구별되는 호출 가능한 속성 같은 속성과 방법을 가진 대상을 클래스, 즉 Classl로 분류할 수 있다.클래스는 하나의 청사진과 같아서 하나의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.