0

QTextEditにカスタムレンダリングを使用してオブジェクトを配置することにより、Qtを使用してCocoaのNSTokenFieldに似たものを実装しようとしています。

Qtのテキストシステムは、QTextObjectInterfaceのサブクラスを実装してカスタム描画コードをカプセル化することにより、これを可能にします。ただし、サブクラス化に加えて、クラスは、実装するインターフェースをメタオブジェクトシステムに認識させる必要もあります。C ++では、これはヘッダーのQ_INTERFACESマクロを介して行われます。

Q_INTERFACES(QTextObjectInterface)

私はC++プロトタイプのmocの出力を見てきましたが、最終的には、インターフェイス名に役立つqt_metacast()実装を生成することになります。

PyQtを使用してこれをエミュレートする方法が見つかりません。何か案は?

4

1 に答える 1

0

カスタム テキスト オブジェクトの基本クラスとして QtGui.QPyTextObject を使用します。これを行う方法の例については、PyQt アーカイブの richtext/textobject の例を参照してください。

于 2012-04-17T13:21:40.023 に答える