2016-09-16 13 views
0

私はLivewiresでPygameを使用して宿題を割り当てて小さなゲームを作ってきました。私はそれをデバッグしようとしてきましたが、成功しませんでした。私はメインループが実行される前に見たい変数を見ることはできません。私はメインループをスキップするためにF10を押すことができますが、それは単にAutos and Watchesウィンドウが機能しなくなるだけです。明らかに、ゲームがデバッガによって一時停止されている場合にのみ、それらはバールを記録することができます。ランタイム中にVisual StudioでPygameアプリケーションをデバッグする方法

実行時にデバッガを使用してvarsを表示する方法はありますか?デバッガが一時停止中に何をしても、私は見たいゲームオブジェクトの中のデータを見ることができません。

+0

あなたはあなたの側の結果に関するスクリーンショットを共有できますか?あなたは本当にあなたのアプリにブレークポイントを追加しますか?ブレークポイントはヒットしましたか?私が知っていることは、ブレークポイントがヒットした場合、DataTipsを使用して値を表示するには、エディター内の任意の変数の上にマウスを置くだけです。または、デバッガが壊れている場合はいつでも、Pythonデバッグインタラクティブを使用できます。 –

+0

あなたは何の話をしていますか?そして、はい、私はブレークポイントを追加し、それはヒットしました。しかし、私はあなたの提案をマウスの上に乗せることを試みました、そして、ゲームが十分なフレームを通過した後、私はゲームオブジェクトの値を見ることができました。その後、私はデバッガのポーズを解除し、Break Allでそれを一時停止しました。 F10を数回押した後、私のオブジェクトの値を見ることができました(ただし、インターフェイスは直感的ではありませんでした)。だから、私の問題は修正されていると思います。ありがとう:) – Tespy

答えて

0

Jack Zhaiの提案のおかげで、私はそれを理解しました。

  1. ブレークポイントにヒットし、デバッガ(ショートカット:F5)一時停止を解除デバッグしたいゲーム内のポイントに

  2. プレイ。ブレーク全て(ショートカット:Ctrl + Alt +ブレーク)を使用して、デバッガRepause

  3. F10キーを押して数回。これにより、メインのライブワイヤループでさらにいくつかのステップが実行されます。

  4. 自動車のウィンドウには、ゲームのオブジェクトのリストを含むエントリがあります。あなたが探しているものが見つかるまでそれを見てください。私の場合、オブジェクトのリストはself._objectsでした。私が探していたオブジェクトは2番目のものでした。つまり、自己でした。_オブジェクト[1]。

  5. 探しているオブジェクトのドロップダウン矢印は、オブジェクトのメンバーを示しています。オブジェクトのプロパティをあまり邪魔にならないようにするには、Interactive Debuggerを使用してそのオブジェクトを変数に割り当てます。こうすることで、objectNameHere.objectValueHereを対話式デバッグコンソールに入力することで、その値を見ることができます。私の場合は

、私は選手= self._objectsを入力しなければならなかった[1]それが割り当てられて得るために、そしてその後、デバッグコンソールにplayer.xを入力することで、プレイヤーのx位置を見ることができました。

-

私はこの答えは私の特定の問題のために働くかもしれません知っているので、誰がより良いものを持っている場合、他人のためにそれを投稿してください。

+0

あなたがこの問題を解決したことを知ってうれしく思います、あなたの共有のおかげで、答えとしてあなたの解決策をマークしてください:) –

+0

もちろん。他の誰かがより良い答えを投稿した場合、私はそれらを最高のものとしてマークすることになります:) – Tespy

関連する問題