我很惊讶地发现断点的存在只会改变pyqtgraph对象的行为(python2.7)。
这是一个极小的工作示例:
import pyqtgraph as pg
pg.mkQApp()
pw = pg.PlotWidget()
p1 = pw.plotItem
p1.showAxis('right')
#import pdb; pdb.set_trace() # Running once with this line, once without
print p1.getAxis('right').rect().width()
运行它:
# No breakpoint:
% python qtg_pdb_bug.py
0.0
# With breakpoint:
% python qtg_pdb_bug.py
> qtg_pdb_bug.py(7)<module>()
-> print p1.getAxis('right').rect().width()
(Pdb) c
35.0
问题:
答案 0 :(得分:1)
我想我明白了。在信号/中断(因此在断点处)时,Qt中必须有自动“事件处理”。
这模仿它:
from pyqtgraph.Qt import QtGui; QtGui.QApplication.processEvents()