質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

Q&A

1回答

2352閲覧

Tkinterとwxpythonでテトリスを作りたいがエラーがわからない

airi_pumpkin

総合スコア30

Python 2.7

Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

0グッド

0クリップ

投稿2017/08/13 10:57

Python2.7でテトリスを作ろうと思い、Tkinterとwxpythonを使用し、以下の一連の動作をしたいのですが
エラーの意味がよくわかりません。どうか原因を教えてください。

Tkinterでスタート画面を作る → STARTをクリック→ Tkinterでwindowを作成 → wxpythonでwindowを
新しく作成 → テトリスが始まる

python2.7
Tkinter
wxpthon4.0

#!/usr/bin/python # -*- coding: utf-8 -*- import wx import random import sys import Tkinter class Menu(object): def __init__(self): self.tkinter() def start(self): self.tetris.frame() root.destroy() def quit(self): wx.Exit() def tkinter(self): tetris = self.Tetris(self) root = Tkinter.Tk() self.root.title(u"TETRIS") self.root.geometry("425x850") #ラベル Static1 = Tkinter.Label(text=u'TETRIS') Static1.pack() #ボタン Button1 = Tkinter.Button(text=u'START', width = 100) Button1.bind("<Button-1>", start) Button1.place(x = 125, y = 60) Button2 = Tkinter.Button(text=u'QUIT', width = 100) Button2.bind("<Button-1 >", quit) Button2.place(x = 125, y = 120) root.mainloop() # 枠組み作り class Tetris(object): def frame(self): frame = wx.Frame(None, wx.ID_ANY, title = 'TETRIS') self.initFrame() def initFrame(self): self.statusbar = self.CreateStatusBar() # ステータスバーの作成 self.statusbar.SetStatusText('0') # ステータスバーに 0 を表示 self.board = Board(self) # Boardクラスのインスタンスオブジェクト self.board.start() # Boardクラスのメソッドstart self.Centre() # 中央に画面を置く self.Show(True) : : 略 : app = wx.App() Menu() #Tetris(None, title = 'TETRIS') app.MainLoop()

エラー
AttributeError: 'Menu' object has no attribute 'Tetris

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

AttributeError: 'Menu' object has no attribute 'Tetris

このエラーはMenu クラスのプロパティに Tetris がないというエラーです。 つまり

tetris = self.Tetris(self)

みたいなコードでいきなり、self(つまりMenu)Tetris を参照しようとしているので、エラーになっています。

投稿2017/08/13 11:23

tell_k

総合スコア2120

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

airi_pumpkin

2017/08/13 16:16

ご回答ありがとうございます。 ご指摘頂いた箇所を直してみたのですが、新たなエラーが出てしまいました^^; ご協力頂きありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問