私は私がエレベータ「シミュレータ」をプログラムしなければならないところに取り組んでいるプロジェクトを持っています。私はpythonとpyqtを初めて使用していて、いくつかの難しさがあります。 私は2つのクラスを持つ瞬間、1つはエレベータークラス、もう1つはQLCDNumberウィジェットを持つliftUIクラスです。現在の階と目的地階数をliftUIクラスに送信するようにエレベータクラスを設定しましたので、現在の階と目的階が同じになるまでlcd値を変更するためにwhileループを使用することができます凍結し、私は強制的に閉じる必要があります。ここでPyQt、LCD Qtウィジェットのカウントダウンをしようとしています
は、現時点で私が持っているコードです:
def lcdFloorNum(self, floorNum, curFloor):
if floorNum <= curFloor:
while floorNum <= curFloor:
self.ui.floorNumber.setProperty("value", floorNum)
floorNum -= 1
これはエレベーターは明らかに下がっているとき、私はこの作品たら、「上がって」やるだけのためのものです... それを取得します私がかなり確信しているエレベータークラスの別の関数のfloorNumとcurFloorは正常に動作しています。私がwhileループを取り除くと、それは数が一度だけ更新され、最後まで更新されません。 GUIがフリーズしないようにしたいという目的を達成するためのコードがありますか?
実際のコードのインデントは正しいと思いますか?つまりif文とそれ以下のすべてがインデントの1つのレベルです。 – bdeniker