Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Italian
  4. Connessioni a run-time
Forum Updated to NodeBB v4.3 + New Features

Connessioni a run-time

Scheduled Pinned Locked Moved Solved Italian
10 Posts 2 Posters 1.5k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    addebito
    wrote on last edited by
    #1

    Ciao a tutti,

    sono nuovo nel forum e conosco poco del Qt Framework.
    Sto leggendo un pò di tutorial, ho acquistato dei libri, etc...
    Sono un programmatore Delphi da diversi anni ma sto cercando di passare al C++ per diversi motivi... multipiattaforma, performance, GUI fantastiche, librerie esterne fatte in C++, etc...

    Venendo alla mia domanda, c'è modo di recuperare a run-time delle informazioni su un oggetto istanziato?
    RTTI o qualcosa del genere in QT?

    Quello che vorrei realizzare è qualcosa del genere:
    alt text
    ...ovvero dei tools (box) che hanno dei pin d'ingresso e pin di uscita e se sono "compatibili" possono essere collegati tra loro.
    Per fare ciò a run-time il programma deve girare su tutti i pins degli items (box) presenti e verificare la compatibilità dei pins. (Es: Integer <--> Integer).

    Ringrazio in anticipo e ovviamente ogni suggerimento / dritta saranno ben accetti!

    1 Reply Last reply
    0
    • VRoninV Offline
      VRoninV Offline
      VRonin
      wrote on last edited by
      #2

      Il link non funziona quindi e' difficile capire esattamente cosa ti serve

      "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
      ~Napoleon Bonaparte

      On a crusade to banish setIndexWidget() from the holy land of Qt

      A 1 Reply Last reply
      0
      • VRoninV VRonin

        Il link non funziona quindi e' difficile capire esattamente cosa ti serve

        A Offline
        A Offline
        addebito
        wrote on last edited by
        #3

        Perdonami @vronin, hai ragione.
        E' uno screenshot di blender.

        0_1568390101299_01.png

        1 Reply Last reply
        0
        • VRoninV Offline
          VRoninV Offline
          VRonin
          wrote on last edited by
          #4

          Non mi e' chiaro perche ti dovrebbe servire RTTI per una cosa come questa. e' perfettamente gestibile dai singoli oggetti senza dover aprire il cofano al linguaggio stesso

          "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
          ~Napoleon Bonaparte

          On a crusade to banish setIndexWidget() from the holy land of Qt

          A 1 Reply Last reply
          0
          • A Offline
            A Offline
            addebito
            wrote on last edited by
            #5

            Nello specifico, nell'applicazione in Delphi che avevo realizzato le utilizzavo per andare a leggere gli attributi sulle property ed altro... Tuttavia, venendo a QT, avete qualche dritta, qualche spunto o esempio da cui partire?
            Grazie, ogni suggerimento è ben accetto.

            1 Reply Last reply
            0
            • VRoninV VRonin

              Non mi e' chiaro perche ti dovrebbe servire RTTI per una cosa come questa. e' perfettamente gestibile dai singoli oggetti senza dover aprire il cofano al linguaggio stesso

              A Offline
              A Offline
              addebito
              wrote on last edited by
              #6

              Buongiorno,

              davvero nessuno ha qualche spunto su dove/come partire ??!?
              @vronin ?

              Grazie in anticipo.

              1 Reply Last reply
              0
              • VRoninV Offline
                VRoninV Offline
                VRonin
                wrote on last edited by VRonin
                #7

                Quelli sono widgets*, ogni widget* avra' cura di controllare cosa puo' connettersi a cosa. Non e' chiaro perche' tu voglia una generica interfaccia che gestisca le proprieta', quelle sono specifiche della subclass, non devi fare cose strane utilizzando QVariant o Q_PROPERTY.

                *widget in senso lato. dall'immagine potrebbero anche essere QGraphicsItem

                "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                ~Napoleon Bonaparte

                On a crusade to banish setIndexWidget() from the holy land of Qt

                A 1 Reply Last reply
                0
                • VRoninV VRonin

                  Quelli sono widgets*, ogni widget* avra' cura di controllare cosa puo' connettersi a cosa. Non e' chiaro perche' tu voglia una generica interfaccia che gestisca le proprieta', quelle sono specifiche della subclass, non devi fare cose strane utilizzando QVariant o Q_PROPERTY.

                  *widget in senso lato. dall'immagine potrebbero anche essere QGraphicsItem

                  A Offline
                  A Offline
                  addebito
                  wrote on last edited by
                  #8

                  Grazie @vronin ,
                  dalle tue risposte mi rendo conto di non aver descritto cosa ho in mente. Ci provo...
                  Quei widgets* (che da ora chiamo tools) sono delle classi che svolgono un determinato compito.

                  Es:
                  Tool Pattern Matching
                  Tool Canny Filter
                  Tool Misura Distanza tra 2 Punti
                  Tool Misura Cerchio
                  Tool Datamatrix

                  In ingresso ricevono dei dati (solitamente un'immagine) ed in uscita generano un risultato (un valore, una coordinata x,y, un'immagine elaborata, etc...).
                  Il software che voglio realizzare avrà una lista di questi tools, l'utente dovrà sceglierli e collegarli tra di loro per ottenere un risultato finale che a seconda dei parametri dirà se l'immagine in input è buona o di scarto.
                  Es: il Tool Datamatrix avrà il compito di leggere e verificare con una stringa campione il risultato, se uguale l'immagine sarà buona altrimenti di scarto.

                  Assolutamente si, graficamente i Tools li vedo come dei QGraphicsItems perchè da quanto ho visto negli esempi le classi QGraphicsView / Scene sembrano quello che cerco.
                  Tu che ne dici?

                  Infine, a livello di codice, ho dei dubbi su come implementare i "pin" di connessione tra i tools.
                  Potrebbe essere corretto fare delle sotto classi PinInput<T> e PinOutput<T> ?
                  Oppure invece di utilizzare i generics vi viene in mente qualche altra modalità in QT?
                  Signal e Slot?

                  Grazie per la pazienza e per il supporto.

                  VRoninV 1 Reply Last reply
                  0
                  • A addebito

                    Grazie @vronin ,
                    dalle tue risposte mi rendo conto di non aver descritto cosa ho in mente. Ci provo...
                    Quei widgets* (che da ora chiamo tools) sono delle classi che svolgono un determinato compito.

                    Es:
                    Tool Pattern Matching
                    Tool Canny Filter
                    Tool Misura Distanza tra 2 Punti
                    Tool Misura Cerchio
                    Tool Datamatrix

                    In ingresso ricevono dei dati (solitamente un'immagine) ed in uscita generano un risultato (un valore, una coordinata x,y, un'immagine elaborata, etc...).
                    Il software che voglio realizzare avrà una lista di questi tools, l'utente dovrà sceglierli e collegarli tra di loro per ottenere un risultato finale che a seconda dei parametri dirà se l'immagine in input è buona o di scarto.
                    Es: il Tool Datamatrix avrà il compito di leggere e verificare con una stringa campione il risultato, se uguale l'immagine sarà buona altrimenti di scarto.

                    Assolutamente si, graficamente i Tools li vedo come dei QGraphicsItems perchè da quanto ho visto negli esempi le classi QGraphicsView / Scene sembrano quello che cerco.
                    Tu che ne dici?

                    Infine, a livello di codice, ho dei dubbi su come implementare i "pin" di connessione tra i tools.
                    Potrebbe essere corretto fare delle sotto classi PinInput<T> e PinOutput<T> ?
                    Oppure invece di utilizzare i generics vi viene in mente qualche altra modalità in QT?
                    Signal e Slot?

                    Grazie per la pazienza e per il supporto.

                    VRoninV Offline
                    VRoninV Offline
                    VRonin
                    wrote on last edited by
                    #9

                    @addebito said in Connessioni a run-time:

                    classi QGraphicsView / Scene sembrano quello che cerco.
                    Tu che ne dici?

                    Concordo

                    Potrebbe essere corretto fare delle sotto classi PinInput<T> e PinOutput<T>

                    No, il mio punto e' proprio questo, il pin non e' un oggetto allo stesso livello dei tools. E' parte del tool stesso. Sta al tool disegnarli e gestire i click sulle diverse parti. Il tool sapra' sempre a cosa puo' collegarsi. Per esempio: clickly su un pin di un tool che accetta stringhe, il tool manda il tipo al suo controllere (QMetaType::QString) e lui lo salva in una variabile, poi clickly sul pin di un altro tool e il controller gli manda il tipo. Se e' compatibile il tool dira' al controller di completare il collegamento.

                    "La mort n'est rien, mais vivre vaincu et sans gloire, c'est mourir tous les jours"
                    ~Napoleon Bonaparte

                    On a crusade to banish setIndexWidget() from the holy land of Qt

                    1 Reply Last reply
                    1
                    • A Offline
                      A Offline
                      addebito
                      wrote on last edited by
                      #10

                      @VRonin Grazie del tempo dedicatomi, ora ho un punto di partenza.

                      1 Reply Last reply
                      0

                      • Login

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • Users
                      • Groups
                      • Search
                      • Get Qt Extensions
                      • Unsolved