2011-11-04 29 views
1

我尝试创建一些东西,在其中放置不同的东西,比如Qt Creator(不,我不想创建一个新的东西,但我需要这个功能)。 您拖动一些元素并将它们拖放到tabPane中的任何位置。 我现在的问题是如何在后台制作网格/光栅。 应该类似于此:如何在面板/ tabPane背景下制作光栅/ se

http://i.stack.imgur.com/QOA4K.png

我的意思是在后台这些点。 如果我使用两个for循环,它将需要几个小时,而且效率不高或其他任何问题。 必须有更高效的解决方案,并且更容易。

我使用Qt作为框架在C++中进行编程。请给我一些链接或其他我可以使用的东西。

回答

0

您可以:

  • 限制重绘到区域真正需要为QWidget::paintEvent documentation解释更新,
  • 填写在你的循环QPoint的容器,而不是绘制点,并吸引他们所有在循环后使用QPainter::drawPoints
  • 将结果缓存在具有透明度的QPixmap中,并在窗口大小没有变化的情况下重用(example from Qt Quaterly)。

当然,你应该做一些测试,看看你是否通过做任何这些优化来获得任何东西。