问题标签 [qpainter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
294 浏览

forms - 在 Qt 中进行像素操作的简单表单

我完全是 Qt 的新手,我想创建一个 800X600 的窗口,它只显示一些圆圈并能够操作表单的像素。用户和表单之间没有交互(没有点击,没有 dblclick,...)它只显示一些具有一种颜色的圆圈和具有不同像素颜色的线条(每条线可能有不同的像素颜色)我也希望能够改变协调系统,我的意思是把它从左上角改到窗口的中心。任何人都可以用一些示例代码帮助我做到这一点吗?提前感谢您的回复。

0 投票
1 回答
511 浏览

qt - Qt,仅显示大型 QImage 的一部分的低成本方式

我在 QImage 中绘制 WAV 文件的频谱(例如:http ://savepic.net/2350314.jpg )。考虑到良好的时间分辨率,WAV 文件可能足够长而无法放入屏幕。

我需要能够足够快地浏览整个文件,可能不需要文件系统读取操作。

所以我必须在内存中保留大的 QImage 以便快速滚动。另一种设计会更慢,因为每次用户滚动屏幕时都需要我重绘 QImage (QImages)。

假设将大 QImage 保留在内存中(例如 1024x50000),我必须能够在程序窗口中显示该大 QImage 的某些部分。

什么是成本最低的解决方案?使用 QScrollArea 还是使用带有偏移参数的 QPainter 方法 drawImage()?

0 投票
0 回答
1438 浏览

qt - 在 QLabel 上显示 char* 位图的最快方法

我正在开发一个图像处理应用程序,它从 IDS uEye 驱动程序获取图像数据作为原始char*缓冲区。我需要向用户展示这张图片。(据我了解Qt,QLabel该类应该用于此目的)。我还应该说明图像处理算法,我认为直接修改char*缓冲区最快。

我已经看到了很多使用这种方法的代码示例:

其中imageQImagechar*缓冲区构造的。

但是,我在 uEye 演示应用程序源中找到了这段代码:

wherePaintLabel是 的子类,QLabel并且显示应该在哪里绘制。rectangleQRectFimage

我做了一些时间测量,结果发现第二种方法快了大约 1.8 倍(大约 9 毫秒对 16 毫秒)。

所以,我的问题是:有没有其他方法可以char*更快地显示位图 - 尽可能快?请注意,这只是一个相同的缓冲区,只是它的内容在变化;因此无需为每一帧从头开始重建所有内容 - 只需刷新即可。

0 投票
1 回答
1692 浏览

qt - 旋转 QPixmap 而不缩放

我正在覆盖 QDial 的绘画事件并显示图像以使其焕然一新。现在我想根据当前值旋转图像。我正在使用以下代码进行操作。

图像确实会旋转,但它会在不同的刻度盘值上缩放到不同的大小。因此,当我旋转 QDial 时,表盘会变大和变小。

请让我知道如何解决此问题。

有一种方法是获取每个 QDial 值的图像并根据旋钮值更新图像,但我不想这样做,因为旋钮范围是 ​​0-1000。

谢谢

0 投票
1 回答
409 浏览

pyqt4 - 使用两个 QPainter 实例同时在 QImage 上绘图

我正在开发 PyQt4 中的应用程序。

在我的应用程序中,我需要根据来自两个来源的数据绘制 QImage
(例如,想象定期调用的不规则定时方法来编辑图像)

为此,我需要使用 QPainter 的两个实例来编辑 QImage,并且两者可能同时在图像上工作。

如果没有特殊处理,这可以正常工作吗?
如果不是,我必须采取哪些额外措施来确保所有同时编辑顺利进行而不会丢失?

0 投票
2 回答
12357 浏览

qt - Qt如何在矩形周围绘制边框?

我想知道使用 QPainter 的 drawRect 时 Qt 是如何做边框的。这样做的原因是我试图绘制三个彼此相邻的矩形,但我无法让它们在所有笔尺寸下都能完美触摸。

0 投票
1 回答
1458 浏览

qt - 如何绘制 QTreeview 内容

我正在尝试在 QPixmap 中绘制 QTreeview 的内容,以便在另一个 QWidget 中呈现它并打印它。

目前我的代码如下所示:

如果用户已经看到了 QTreeview,这将非常有效。树视图出现在主窗口的一个选项卡中。如果用户看到树视图然后单击执行我上面的代码的按钮,那么所有树视图都会出现在 QPixmap 中。否则只会出现一点树视图。

有谁知道如何解决这个问题?

谢谢

0 投票
1 回答
422 浏览

python - PyQt4 绘图和睡眠

上面的代码是paintEvent的一部分,这里的问题是绘画不是一个矩形一个矩形发生,而是等待整个睡眠完成,即sleep(.4)*len(trgx),然后打印所有矩形一起。我该如何纠正这个?

0 投票
1 回答
4095 浏览

qt - QPainterPath 与直线的交点(求 QPainterPath y by x)

我有 QPainterPath。我需要通过 x 找到 QPainterPath 的 y 坐标。

我在 QPainterPath 中找到了 intersected() 方法。因此,我创建了新的 QPainterPath,它是从我的路径边界矩形的左到右边缘与 x 坐标的线,以找到相交结果的点。

intersects() 方法返回 true。但是 intersected() 返回空路径。

如果我使用高度 = 1 的矩形而不是线,一切正常。

也许您对如何找到 QPainterPath 与线的交集有更好的想法?

0 投票
1 回答
6892 浏览

python - 在 PySide/PyQt 中使用 drawPolyline 制作动画波浪

我正在尝试为折线设置动画(它必须像波浪一样)。我试过这样:

但是,它不起作用!程序运行时,屏幕上一片混乱。看来,这self.update()不会更新窗口。请帮忙。