0

だから、私は実際にフレームを再開しようとしています。mainF.py ファイルでフレームを定義し、panels.py ファイルでパネルをクラスとして定義しています。クリア ボタンが押されたときに、次の 2 つのメソッドを呼び出します: self.frame.Destroy() main()

ここで、main() はフレーム オブジェクトをジャンプスタートするためのメソッドです。

私のmainFファイルでは、パネルインポート*からこのステートメントを使用しています。パネルファイルでは、インポートmainFとパネルインポート*を試しました。

ただし、常に NameError: Panel1 is not defined を受け取ります。

これは私が import ステートメントで定義していて、プログラムがこのエラーなしで main() を初めて実行するため、私を混乱させます。すべてのクラスを 1 つのファイルで定義した場合、このエラーは発生しませんでした。どんな助けでも感謝します、ありがとう。

4

1 に答える 1

0

おそらく循環インポートが原因です。1 つのファイルは、別のファイルをインポートするときにまだ完全にインポートされていないため、最初のファイルが再度インポートされます。すでに開始されているため、元のモジュール オブジェクトが返されますが、探しているクラスはまだ定義されていません。

于 2013-05-30T00:45:27.350 に答える