2015-01-04 2 views
-2

내 문제의 가능한 해답을 이미 찾았지만 해결되지 않은 것은 내 프로그램에 적용되지 않습니다. 나는 내 코드에서 무엇이 잘못되었는지를 모른다. 그래서 나는 여기서 물어보기를 원한다. 파이썬 3, Qt를 사용하고 있습니다. 여기 함수에서 다른 클래스의 다른 함수로 변수 전달하기 - Python

내 코드입니다 :

main.py

> class Emp(QtGui.QWidget, Ui_Emp): 
>  def __init__(self, parent=None): 
>   #.. 
>  def getdata(self): 
>   ename = str(self.emp_comboBox.currentText()) 
>   Perform.getrb(ename) 
     @QtCore.pyqtSignature("on_proceed_clicked()") 
     def perform(self): 
      self.a = Perform(self) 
      self.a.show() 
      self.close() 
    class Perform(QtGui.QWidget, Ui_Perf): 
>  def __init__(self, parent=None): 
>   #..  
>  @QtCore.pyqtSignature("on_procbutton_clicked()") 
>  def getrb(ename): 
>   print(ename) 

출력

> Fatima Cruz *prints the ename* 
> <__main__.Performa at 0x00000000036EC288>` 

편집 : 전에, 내 prblem은 수행 클래스에 클래스 EMP를에서 변수 'ENAME'을 통과했다 . 내 문제는 지금이다

> <__main__.Perform object at 0x00000000036EC288> 

나는 그것이 무엇을 의미하고 그것을 어떻게 디버깅하는지 모른다.

나는 이것이 모두 의미가 있기를 바랍니다. 설명이 필요한 경우 알려주십시오. 코드 자체에 대한 비판을 환영합니다. 미리 감사드립니다.

+0

문제의 원인이되는 줄을 정확하게 식별 했습니까? –

+0

안녕하세요. 선생님, 이미 'ename'을 얻었지만 여전히 생각하는 오류가 있습니다. 'ename'다음에 출력에는 '<__ main __.이 (가) 있습니다. 0x00000000038DC288에서 오브젝트 수행'> 의미는 무엇입니까? – Fatima

+2

코드가 불완전합니다. 그것은 그대로 달릴 수 없으므로 여기 사람들은 추측 할 수 있습니다. – Trilarion

답변

0

첫 번째 해결책에서 Perform.getrb(self, ename)self.getrb(ename)으로 변경해야한다고 생각하십니까?

+0

나는 그것을 시도했지만 동일한 결과를 얻는다. 대답 해줘서 고마워. 어쨌든, 나는 약간의 코드를 잊어 버렸고, 나는 그 부분에 문제가 있을지도 모른다. 그것을보십시오 :) – Fatima

0

그래서 실행 가능한 코드를 제공하지 않는 이유는 실제로 좋지 않습니다. __ __main × 00에서의 객체 (좀 더 숫자) 을 - 그러나 귀하의 질문에 대한 :> 출력

#main.py 
class A: 
    #some methods 

classA = A() 
print class A 

을 : 당신이있는 경우

클래스는 말할 수 '무엇 그것은 의미합니까'. 객체를 인쇄하면 Python이 속한 클래스를 알려줍니다 : __main__A -> 메인 모듈에있는 클래스 A의 객체 과 0x00 ...은 메모리에 저장된 위치를 알려줍니다.

코드에서 개체를 인쇄하는 문장이있을 수 있습니다.

+0

죄송합니다. Hehe하지만 고마워! :) – Fatima

관련 문제