Q怪异行为(不要用负数更新屏幕)
QGraphicscene strange behavior (don't update screen with negative numbers)
我有一个QGraphicscene,它不会用负数更新屏幕。图片说明了一切。
http://s16.postimage.org/4b59m8hx1/problem.jpg
这就是简单的代码。
if (dinA){ //assume its always true
int sx=dinA->getX();
int sy=dinA->getY();
dis->scene.addRect(QRectF(300,100-sy, sx, sy),QPen(), QBrush(Qt::FDiagPattern));
}
//** 300,100-sy ** because of my work-area is 600*300
原因可能是什么?
如果我正确解释了您的屏幕截图及其下面的文本,那么您使用的高度是负数。但是,这会创建一个无效的QRectF
。引用Qt文件:
bool QRectF::isValid() const
[...]
A valid rectangle has a width() > 0 and height() > 0.
在您的代码中,您应该确保大小和宽度为正。否则,必须交换角点的x和/或y坐标。
希望能有所帮助!
相关文章:
- 从C++本机插件更新Vector3数组
- QGraphicsPolygonItem在拖动时未更新QPolygonF坐标
- cmake更新缓存的变量
- UE4-如何在给定4个屏幕坐标的情况下缩放纹理或材质
- 更新到莫哈韦后出现cmath错误
- OpenMP:并行更新数组总是需要减少数组吗
- 如何在GTK程序运行时禁用屏幕保护程序/电源管理/屏幕消隐
- 使用 SFML 和 C++ 将 Pixel 打印到屏幕上
- 为什么我的变量没有更新,我的 LED 没有亮起?
- 指针没有更新它在void函数内部指向的值
- 如何在c++中获取要更新的值
- 当对象在屏幕空间中较小时,OpenGL 更新缓慢
- QT QML 中的 OpenGL,无法更新屏幕上的图像
- Q怪异行为(不要用负数更新屏幕)
- 循环更新 Linux 的终端屏幕
- SFML - 流体屏幕更新
- SDL_RenderPresent()不定期更新屏幕
- QPaintEvent -只更新屏幕的一个区域
- 如何强制QGLWidget更新屏幕
- OpenGL只更新屏幕为vSync fps