2017-03-04 8 views
0

QRadioボタンの14個(はい/いいえの7個のペア)をPython 4コードで作成して、7Qごとにループして記録することを試みています。またはQRadioボタンがチェックされていない。私のコードは以下の通りです。次のエラーメッセージが表示され続けました。QMainWindow 'オブジェクトに属性' QWidget 'がありません

'QMainWindow'オブジェクトには属性 'QWidget'がありません。

私は何が間違っていたのか分かりません。私が知る限り、ほとんどの場合、このタイプのエラーにはクラスが含まれます。事前にどうもありがとうございました。

rdbObjects = [] 
numQuestions = 7 
firstWidget = 0 
for q in range(0,numQuestions): 
    widg = window.QWidget2(Ui_Assignment3_MainWindow) 
    subWidg = QWidget(widg) 
    subWidg.setGeometry(500,q*60,141,421) 
    rdb1 = QRadioButton(subWidg 
    rdb1.setGeometry(10,10,41,18) 
    rdb2 = QRadioButton(subWidg) 
    rdb2.setGeometry(60,10,61,18) 
    rdb1.setText('Yes') 
    rdb2.setText('No') 
    if rdb1.isChecked(): 
     print ('0') 
    else: 
     print ('1') 
rdbObjects.select([rdb1, rdb2]) 
+1

Python 4 ??????? –

+0

申し訳ありません、Python 3.4 –

+0

次回に質問を投稿する前に知っておいてください。StackOverflowはデバッグサービスではありません。理想的には、あなたの質問は、同様の問題を抱えている他の人が読むでしょう。しかし、これはあなたが良い質問をする場合にのみ役立ちます。別の質問を投稿する前に、[最小限の、完全で検証可能な例を提供してください](http://stackoverflow.com/help/how-to-ask)を読んでください(http://stackoverflow.com/help/how-to-ask)/help/mcve)。これを正しく行うと、質問する前にあなた自身の質問に答えることができるでしょう。 –

答えて

0

私はあなたが提供したコードサンプルでは、​​この特定のインスタンスが表示されませんが、このトレースバックは

のようなもの、あなたが QMainWindowのインスタンスを作成し、そこから属性 QWidgetにアクセスしようとしていることを示しています
w = QMainWindow() 
w.QWidget 

しかし、QMainWindowにはこの名前の属性がないため、エラーになります。あなたが提供されたコードサンプルでは、​​それはあなたが行で同様の何かをするよう

widg = window.QWidget2(Ui_Assignment3_MainWindow) 

私はwindowが何であるかを知らないように見えますが、それは名前QWidget2持つ方法や機能を持っていない限り、これが原因となります同様のエラー。

関連する問題