class QDesignerPropertyEditorInterface#

QDesignerPropertyEditorInterface 类允许您查询和操作 Qt Designer 属性编辑器的当前状态。 更多信息

Inheritance diagram of PySide6.QtDesigner.QDesignerPropertyEditorInterface

摘要#

方法#

虚方法#

信号#

注意

本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对片段翻译的贡献。如果您发现翻译中的问题,您也可以通过在https:/bugreports.qt.io/projects/PYSIDE上创建工单来通知我们。

详细描述#

警告

本节包含从C++自动翻译到Python的代码片段,可能包含错误。

QDesignerPropertyEditorInterface 包含一组通常用于查询属性编辑器当前状态的函数,以及一些操作其状态的槽。该接口还提供了一个信号,propertyChanged(),每当属性编辑器中某个属性发生变化时都会发出此信号。信号参数是发生变化的属性和其新值。

例如,在实现自定义小部件插件时,可以将信号连接到自定义槽

propertyEditor = formEditor.propertyEditor()
propertyEditor.propertyChanged.connect(
        self.checkProperty)

然后在该指定属性(属于特定小部件)变动时,自定义槽可以检查新值是否在我们期望的范围内

def checkProperty(property, value):

    propertyEditor = formEditor.propertyEditor()
    object = propertyeditor.object()
    widget = MyCustomWidget(object)
    if widget and property == aProperty and value != expectedValue:
        {...}

QDesignerPropertyEditorInterface 类不应直接实例化。您可以使用 propertyEditor() 函数获取 Qt Designer 控件编辑器的接口。当前 Qt Designer 控件编辑器对象的指针(以上示例中的 formEditor)由 initialize() 函数的参数提供。在实现自定义控件插件时,您必须派生子类 QDesignerCustomWidgetInterface 以使您的插件对 Qt Designer 可用。

访问属性编辑器的函数包括:可用于检索表编辑器接口的 core() 函数,返回属性编辑器中当前选中属性名称的 currentPropertyName() 函数,返回当前选中对象的 object() 函数以及返回属性编辑器是否被写保护的 isReadOnly() 函数(如果是写保护则为真,否则为假)。

操作属性编辑器状态的槽包括:可用于更改 Qt Designer 工作空间中当前选中对象的 setObject() 槽,更改给定属性的值的 setPropertyValue() 槽以及控制属性编辑器写保护的 setReadOnly() 槽。

__init__(parent[, flags={}])#
参数:

根据指定的 parent 和窗口 flags 构建一个属性编辑器界面。

core()#
返回类型:

QDesignerFormEditorInterface

返回指向当前 Qt DesignerQDesignerFormEditorInterface 对象的指针。

abstract currentPropertyName()#
返回类型:

str

返回属性编辑器中当前选择的属性的名称。

另请参阅

setPropertyValue()

abstract isReadOnly()#
返回类型:

bool

如果属性编辑器是写保护的,则返回 true;否则返回 false。

另请参阅

setReadOnly()

abstract object()#
返回类型:

QObject

返回在 Qt Designer 的工作空间中当前选中的对象。

另请参阅

setObject()

propertyChanged(name, value)#
参数:
  • name – str

  • value – object

每当属性编辑器中的属性改变时,都会发出此信号。通过 namevalue 分别指定改变的属性及其新值。

另请参阅

setPropertyValue()

abstract setObject(object)#
参数:

objectQObject

Qt Designer 的工作空间中当前选中的对象更改为 object

另请参阅

object()

abstract setPropertyValue(name, value[, changed=true])#
参数:
  • name – str

  • value – object

  • changed – bool

设置由 name 指定的属性的值为 value

此外,在属性编辑器中,该属性被标记为 已更改,即其值与默认值不同。

抽象 setReadOnly(readOnly)#
参数:

readOnly – bool

如果 readOnly 为 true,则属性编辑器将设置为写保护;否则将移除写保护。

另请参阅

isReadOnly()