- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想要一个 python 应用程序,它显示一堆小肖像和下面的名字。像那样:
它们应该是可移动和可编辑的(通过双击文本)。
我正在使用 PyQt4,所以我发现,为 Canvas 使用 QGraphicsView
和 QGraphicsScene
是最简单的。所以我像这样子类化了一个 QGraphicsItemGroup
:
from PyQt4 import QtCore, QtGui
class Speaker(QtGui.QGraphicsItemGroup):
def __init__(self, name, parent=None):
QtGui.QGraphicsItemGroup.__init__(self, parent)
self.setFlag(QtGui.QGraphicsItem.ItemIsMovable)
self.text = QtGui.QGraphicsTextItem(name)
self.text.setTextInteractionFlags(QtCore.Qt.TextEditorInteraction)
self.addToGroup(self.text)
self.portrait = QtGui.QGraphicsPixmapItem(QtGui.QPixmap("portrait.png"))
self.portrait.setY(-35)
self.addToGroup(self.portrait)
def keyPressEvent(self, QKeyEvent):
# Forwarding KeyPress events to the text to enable text editing
self.text.keyPressEvent(QKeyEvent)
但是有一些问题:
我试图捕获双击信号并切换到将所有鼠标事件转发到文本的编辑模式。但是我无法通过双击激活编辑过程,而且我无法保留通过单击其他地方结束编辑的行为。
所以我希望有人能帮助我。知道如何手动激活和停用 QGraphicsTextItem
的文本交互模式可能就足够了。谢谢!
最佳答案
也许你应该调用 QGraphicsItemGroup::setHandlesChildEvents(false)。
参见 SO 问题 Events with QGraphicsItemGroup
关于python - 在 QGraphicsItemGroup 中编辑 QGraphicsTextItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10741584/
我的系统具有派生自 QGraphicsWidget 的类。我在 QGraphicsScene 的布局中管理派生类对象。现在我需要一个包含两个或更多 QGraphicsWidget 的复合项目,我还需要
在我的应用程序中,我想使用 QGraphicsItemGroup 将项目分组为一个项目。 我玩了一下,不确定是否使用它,因为当我想捕捉事件时,事件会合并在一起,但我想处理特定子事件的特定事件。 我怎样
我正在尝试从 QGraphicsItemGroup 中删除 QGraphicsItem。当调用 removeFromGroup 时,该项目被删除(当然)。但是,它在场景中不再可见。我必须调用 Scen
我有很多rectItem在一个 QVector list_rect_item; 我将它们分组在 QGraphicsItemGroup 中,使它们从我的场景中间旋转: for(int i=0 ; i
我有一个 QGraphicsItemGroup 聚合了几个子项,我只想显示组的一部分。(不是子项的数量,区域)。就像这里的图片一样。 我要显示显示区域。 为此,我尝试覆盖 QGraphicsItemG
我一直在尝试使用 QGraphicsItemGroup 来获取一组 QGraphicsItem* 的边界矩形。在我看来,当我将所有项目插入组中时,边界矩形已正确确定;但是如果我随后移动组中的项目,边界
在 Qt 4.7.1 中,我尝试使用 QGraphicsItemGroup 选择多个元素。目标是在选择一个元素时选择组中的所有元素。 如果我单独创建对象,我在构造函数中设置 ItemIsSelecta
下面的代码 QGraphicsEllipseItem *ellipse = addEllipse(x, y, 6, 6, series_pen); ellipse->translate(-ellips
我想要一个 python 应用程序,它显示一堆小肖像和下面的名字。像那样: 它们应该是可移动和可编辑的(通过双击文本)。 我正在使用 PyQt4,所以我发现,为 Canvas 使用 QGraphics
我正在尝试使用 QGraphicsView、QGraphicsScene && QGraphicsItemGroup 绘制带有可移动控制点的图。我遇到的问题是我找不到任何移除/删除该项目的方法。 我的
如果我有一个 QGraphicsItem,我想将其放入 QGraphicsItemGroup,在一个循环中......就像这样: for(int i =0; i addToGroup(ipi);
假设我想在一些 QGraphicsScene 中显示一个简单的家谱树。那里的每个人都有确切的名字和姓氏(没有显示其他任何内容)。 我想为那里的每个人建立一个 QGraphicsItemGroup由两个
这是我的第一篇文章。我最近开始将 QT 与 C++ 结合使用。印象深刻。我有一个似乎无法解决的问题。基本上,我试图将许多 QGraphicsItems 组织成两个 QGraphicsItemGroup
我是一名优秀的程序员,十分优秀!