wxProgressDialogを使用して、ポート間の切り替え時間と測定時間を表示しています。私はこのテストを24時間以上実行しています(データの記録中に何度も同じことを繰り返す)。時間の7時に表示されるTherroです:wxAssertFailure一定期間に渡ってダイアログボックスバーを表示する
トレースバック(最新の呼び出しの最後): ファイル "C:\ Users \ユーザーlocaluserの\デスクトップ\サーマル\ Cheyenne_Antenna_Cal_PDA_Thermal_Test.py" take_measurements_at_interval self.take_measurementで、ライン2117、(自己) ファイル "C:\ Users \ユーザーlocaluserの\デスクトップ\サーマル\ Cheyenne_Antenna_Cal_PDA_Thermal_Test.py" take_measurement self.Measure_Plot(自己) ファイル "C:\ Users \ユーザーlocaluserの\デスクトップ\サーマル\ Cheyenne_Antenna_Cal_PDA_Thermal_Test.py" で、ライン2185を、 、Line 2231、Measure_Plot内 style = wx.PD_AUTO_HIDE | wx.PD_ELAPSED_TIME | wx.PD_REMAINING_TIME) ファイル "C:\ Python27 \ libには\サイト - パッケージ\ WX-2.8-MSW-ユニコードの\ wx_windows.py" のinitで、ライン2951、 窓 .ProgressDialog_swiginit(自己、窓 wxControl :: MSWCreateControl():CreateWindowEx(...)で、C++アサーション "wxAssertFailure"が.... \ src \ msw \ control.cpp(159)で失敗しました。 "静的"、フラグ= 52000100、EX = 00000000)ここで
#Giving Time for switch to toggle next port
progressMax = 5
dialog = wx.ProgressDialog("A progress box", "Time to switch", progressMax,
style=wx.PD_AUTO_HIDE | wx.PD_ELAPSED_TIME | wx.PD_REMAINING_TIME)
keepGoing = True
count = 0
while keepGoing and count < progressMax:
count = count + 1
wx.Sleep(1)
keepGoing = dialog.Update(count)
dialog.Destroy()
'遅延時間' に使用されているコードである
に失敗しました
コードが5秒間停止すると、データが記録される前にスイッチハードウェアとPNAが安定します。このすべては、一定期間Forループで起こっています。誰かがより多くの情報を必要とするなら、私は証明することができます。
プラットフォーム/ツールキット/ OSのどちらのバージョンですか?どのwxバージョンですか? C++サンプルでそれを再現できますか? – Igor
これはPython 2.7、Windows 7で、これをC++で再現しようとします。 –