Anzeige:
Seite 2 von 2 ErsteErste 12
Ergebnis 16 bis 17 von 17

Thema: connect eigenschaft bei qt

  1. #16
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Man kann nur einmal von QObject ableiten, das geht also nicht.

    Mach es eher so

    Code:
    class CallbackInterface
    {
    public:
        void open_texture(const QString&) = 0;
    };
    
    class CallbackConverter : public QObject
    {
        Q_OBJECT
    public:
        CallbackConverter(CallbackInterface* iface, QObject* parent)
            : QObject(parent), m_interface(iface) {}
    
    public slots:
        void slotOpenTexture(const QString& filename) {
            if (m_interface) m_interface->open_texture(filename);
        }
    
    private:
        CallbackInterface* m_interface;    
    };
    Dein Template leitete dann von deinem GL Widget und diesem CallbackInterface ab.

    Irgendwo darin, zum Beispiel schon im GLWidget, machst du
    Code:
    CallbackConverter* converter = new CallbackConverter(this);
    QObject::connect(...);
    Du kannst den Converter natürlich auch extern erzeugen.

    Ciao,
    _

    Edit: wahrscheinlich geht es noch einfacher.
    Wenn die Ableitung GLWidget<-Template klappt, kannst du den Slot auch im GL Widget implementieren, dann sparst du dir alles andere.
    Qt/KDE Entwickler
    Debian Benutzer

  2. #17
    Registrierter Benutzer
    Registriert seit
    26.12.2001
    Ort
    Pulheim
    Beiträge
    28
    danke für dei schnelle antwort werde es versuchenw ie du gesagt hast. Hatte garnicht mehr daran gedacht das GlWidegt ja garkein Template ist, versuche es erstmal damit ansonsten bastele cih mir so ein Interface wie du es gesagt hast

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •