728x90
728x90
BIG
# 시그널 슬롯 만들기
import sys
from PyQt5.QtWidgets import *
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.initWindow()
def initWindow(self):
lcd = QLCDNumber(self)
dial = QDial(self)
vbox = QVBoxLayout()
vbox.addWidget(lcd)
vbox.addWidget(dial)
self.setLayout(vbox)
self.setGeometry(50,50,200,200)
self.show()
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = MyWindow()
sys.exit(app.exec_())
dial.valueChanged.connect(lcd.display)
슬롯 시그널
잘돌아감을 알 수 있다.
레이아웃을 hbox로 쪼갬
hbox = QHBoxLayout() #새로운 레이아웃으로 나눔
hbox.addWidget(btn1)
hbox.addWidget(btn2)
vbox.addLayout(hbox)
self.setLayout(vbox)
사이즈를 줄였다 늘렸다하기
def resizeBig(self): #화면사이즈바꾸는
self.resize(400,400)
def resizeSmall(self):
self.resize(150,150)
dial.valueChanged.connect(lcd.display)
btn1.clicked.connect(self.resizeBig)
btn2.clicked.connect(self.resizeSmall)
잘돌아감을 알 수 있다.
import sys
from PyQt5.QtWidgets import *
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.initWindow()
def initWindow(self):
lcd = QLCDNumber(self) #슬롯
dial = QDial(self) #시그널
btn1 = QPushButton('BIG', self)
btn2 = QPushButton('SMALL', self)
hbox = QHBoxLayout() #새로운 레이아웃으로 나눔
hbox.addWidget(btn1)
hbox.addWidget(btn2)
vbox = QVBoxLayout()
vbox.addWidget(lcd)
vbox.addWidget(dial)
vbox.addLayout(hbox)
self.setLayout(vbox)
dial.valueChanged.connect(lcd.display)
btn1.clicked.connect(self.resizeBig)
btn2.clicked.connect(self.resizeSmall)
self.setGeometry(50,50,200,200)
self.show()
def resizeBig(self): #화면사이즈바꾸는
self.resize(400,400)
def resizeSmall(self):
self.resize(150,150)
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = MyWindow()
sys.exit(app.exec_())
#사용자정의시그널만들기
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
class Signal(QObject):
signal = pyqtSignal()
class MyWindow(QWidget):
def __init__(self):
super().__init__()
self.initWindow()
def initWindow(self):
self.sig = Signal()
self.sig.signal.connect(self.close) #프로그램종료
self.setGeometry(50,50,300,300)
self.show()
def mousePressEvent(self, QMouseEvent):
self.sig.signal.emit() #에밋메서드
728x90
반응형
BIG
'✨Python' 카테고리의 다른 글
[Python/파이썬] 파이썬으로 ui 윈도우 어플리케이션 구현하기 비트코인 매매창 만들기 2 (0) | 2022.06.14 |
---|---|
[Python/파이썬] 파이썬으로 ui 윈도우 어플리케이션 구현하기 비트코인 매매창 만들기 1 (0) | 2022.06.14 |
[Python/파이썬] 긱허브 생성하기 (0) | 2022.06.13 |
[Python/파이썬] 파이썬으로 ui 윈도우 어플리케이션 구현하기 위젯 5 응용프로그램만들기(번역기만들기1) (0) | 2022.06.13 |
[Python/파이썬] 파이썬으로 ui 윈도우 어플리케이션 구현하기 위젯 4 위젯에대해 알아보기 (0) | 2022.06.13 |
댓글