- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 opengl 创建 2D map 编辑器来绘制简单的 32x32 Sprite ,但似乎我无法将我的 QGLWidget 调整为较大尺寸(即尺寸 * Sprite 尺寸 -> 1024 * 32),仅使用 1024 似乎可以正常工作(使用 glwidget->setMinimumSize(...))。我已经用谷歌搜索了一段时间,我发现的唯一有趣的事情是子类化 QAbstractScrollArea 并将我的 QGLWidget 设置为它的视口(viewport)(这就是 QGraphicsView 所做的),我也看到了所有 Qt opengl 示例,但我找不到任何东西可以提供帮助(图像查看器示例除外,这不是我想要的),我还尝试了以下操作:horizontalScrollBar()->setMaximum(width * 32);
在 scrollarea 上将可调整大小的小部件设置为 true/false,但仍然没有。任何想法我会怎么做?如果您要求,我可以展示更多代码。
verticalScrollBar()->setMaximum(height * 32);
使用 Qt v4.7.3。
最佳答案
我有两个想法:
如果可能,放弃使用 QGLWidget 的想法,将 Sprite 直接放在图形场景 (QGraphicsPixmapItem) 中。可能不是您想要的,但图形场景是用来处理大量项目的,因此您需要的大部分内容(例如在项目上触发鼠标事件)已经实现。
或者使用 QGraphicsWidget 将 QGLWidget 放置在图形场景中。这应该会自动告诉场景它的大小,然后告诉 View 场景的大小。如果场景不适合 View ,滚动条会自动出现。
更新:
如 this link 中所述,您可以在任何图形 View 中使用 OpenGL:
view.setViewport(new QGLWidget(QGLFormat(QGL::SampleBuffers)));
view.setViewportUpdateMode(QGraphicsView::FullViewportUpdate);
关于c++ - 调整 QGLWidget 的大小以适应我拥有的每个 Sprite 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10872805/
我正在使用带有 PySide 绑定(bind)的 python 中的 Qt。我的应用程序的主要部分是可以调整到特定值的 OpenGL View (这是一个模拟器,用于在移动设备的不同分辨率下测试我的游
我是QT新手,有问题。我从http://qt.nokia.com/downloads/sdk-windows-cpp下载了用于开源C++开发的Qt SDK,并在PATH中添加了C:\QT\2010.0
我想在 QGLWidget 中显示 OptixSDK 的示例 6。 我的应用程序只有 3 个 QSlider 用于绕 X、Y、Z 轴和 QGLWidget 旋转。 据我了解,每当我的 QSlider
我正在 Qt 中制作一个 GUIon,我正在使用 QGLWidgt 来显示对象的运动。为了调试目的,我在矩阵上进行了硬编码以尝试显示茶壶,但屏幕上没有显示任何内容。我尝试了很多东西,我只是不知道出了什
基本上我想在 Text Edit 小部件上显示按下的按钮。 Key 事件适用于 GLWidget。如何与 GLWidget 中的 MainWindow 小部件进行交互?到目前为止,这是我的代码, 主窗
我基本上想做的是创建一个 QGLWidget 的实例(或者更确切地说是 QGLWidget 的派生类),将它添加到 QMainWindow ,然后从我的 QTCreator 程序中的任何地方访问 QG
我有一个 Qt 应用程序,它在 Mac OS 上使用 OpenGL 绘图和 QGLWidget。在我的 MBP 上运行良好,但在 30"屏幕上尝试时,我注意到存在窗口大小限制。 如果我将窗口大小增加到
我想编写一个单线程应用程序来显示两个 QGLWidget(一个用于 3D,一个用于 2D)。我试图找到有关同时显示的两个 QGLWidgets 的信息,但没有找到任何对我有帮助的信息。 现在,我认为我
我看了很多关于 OpenGL 不绘图、常见错误等的文章和 SO 问题。这个让我很困惑。 我已经为 glOrtho 尝试了几种不同的设置、不同的顶点位置、颜色等,但都无济于事。 我可以确认 OpenGL
我有小部件: class Main_Widget : public QWidget { Q_OBJECT public: explicit Main_Widget(QWidget *p
是否可以使用 Qt 在 QGLWidget 中完全脱离屏幕进行渲染,而无需将场景重新绘制到屏幕,从而避免缓冲区在监视器上完全翻转? 我需要保存在帧缓冲区上生成的每一帧,但是,由于序列由 4000 帧组
我是 OpenGL 和 Qt 的新手,我正在同时学习这两者(已经 3 天了:)。几年前,我用 DirectX 做了一些实验,我清楚地记得在那里制作全屏窗口是可能的。我所说的全屏是指真正的全屏,即使顶部
我正在上传大量纹理(每秒 60 个 VGA 图像)并且它阻塞了我的 UI 线程。来自 the Qt 5.1 QGLWidget manual page (强调我的): Texture uploadin
我正在使用 QGraphicsView显示 2D 图像并有一个单独的 QGLWidget窗口以显示一些 3D 对象。我正在根据 3D 对象的旋转动态更改“QGraphicsView”中显示的图像。 我
我有两个计时器来重新绘制 QGLWidget 并确定 FPS QObject::connect(&fpsTimer, SIGNAL(timeout()), this, SLOT(updateFps()
我有一种流媒体应用程序,它应该捕获窗口的内容。在窗口中,一个 QGLWidget 绘制了东西。目前我在每个绘制周期中都使用 widget.grabFrameBuffer(必须是实时的)。该应用使用 1
我有一个 QGLWidget,我在其中渲染一个动态网格。我想做的是录制我在此窗口中查看的视频。如果可能的话,我想使用 Qt 的低级多媒体库或高级 Phonon。 非常感谢您的想法! 最佳答案 在最新版
我想知道是否有比这更好的解决方案:我有一个渲染代码和一个颜色选择代码,我已经共享了这两个代码(VBO 等)之间可以共享的所有内容,我的代码看起来像: void paintGL() { label1:
我想使用 QGLWidget、QGraphicsScene 和 QGraphicsView 创建一个简单的缩略图查看器。我在将 QGLWidget 放在 QGraphicsScene 上时遇到问题。代
我一直在尝试在 QGLWidget 中渲染立方体,但结果是错误的。无论我如何旋转它,它看起来都像一个扁平的正方形。就像它没有注意到它顶点的 Z 坐标一样。就在我添加 GL_DEPTH_BUFFER_B
我是一名优秀的程序员,十分优秀!