인프런 커뮤니티 질문&답변

Woody Kim님의 프로필 이미지
Woody Kim

작성한 질문수

예제로 살펴보는 PyQt Tutorial

생선가게 POS기 만들기 - 1

따라했는데 안되요....오류가 뜹니다...

작성

·

3.7K

0

TypeError: addWidget(self, QWidget, stretch: int = 0, alignment: Union[Qt.Alignment, Qt.AlignmentFlag] = Qt.Alignment()): argument 1 has unexpected type 'method' PS C:\Users\woody\OneDrive\바탕 화면\Python Workspace>
몇시간을 돌려봐도 선생님이 짠 코드랑 똑같이 짰는데
실행이 안되요.....한번 봐주시겠어요????
from PyQt5.QtCore import Qt
import sys
from PyQt5.QtWidgets import *

class myapp(QWidget):

    def __init__(self):
        super().__init__()
        self.initUI()
    
    def initUI(self):
        self.s = ''

        self.one = QPushButton('1')
        self.one.clicked.connect(lambda:self.clickedNum('1'))

        self.plus = QPushButton('+')
        self.plus.clicked.connect(lambda:self.clickedNum('+'))

        self.three = QPushButton('3')
        self.three.clicked.connect(lambda:self.clickedNum('3'))

        self.one = QPushButton('=')
        self.one.clicked.connect(self.calc)

        hbox = QHBoxLayout()
        hbox.addWidget(self.one)
        hbox.addWidget(self.plus)
        hbox.addWidget(self.three)
        hbox.addWidget(self.calc)

        self.setLayout(hbox)


        self.setWindowTitle("계산기")
        self.show()
    
    def clickedNum(selftext):
        self.s += text
        print(self.s)

    
    def calc(self):
        print(eval(self.s))
        self.s = ''


if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = myapp()
   app.exec_()

답변 2

0

        self.qq = QPushButton('=')
        self.qq.clicked.connect(self.calc)
        
        hbox = QHBoxLayout()
        hbox.addWidget(self.one)
        hbox.addWidget(self.plus)
        hbox.addWidget(self.three)
        hbox.addWidget(self.qq)

0

Seungju Kim님의 프로필 이미지
Seungju Kim
지식공유자

self.one 변수명을 중복하게 쓰셔서 오류가 나는것 같네요!
참고하시면 될 것 같습니다.
Woody Kim님의 프로필 이미지
Woody Kim

작성한 질문수

질문하기