Thursday, 7 September 2017

Qmetaobject Qt Connectslotsbyname Alcun Segnale Corrispondente Forex


Questa domanda ha già una risposta qui: mi rendo conto che questo problema è stato fatto prima, anche se la mia situazione sono leggermente diverse e ho trovato nessuna delle altre risposte utili, Sono nuovo di QtCreator. Sto cercando di costruire un progetto con QtCreator, che costruisce bene su OSX, ma quando si costruisce con Ubuntu ottengo questo errore: Il progetto si basa ancora e in parte funziona, ma non scriverà a un dispositivo esterno (il punto del programma). Qualcuno può dare una procedura dettagliata di ciò che ho bisogno di fare, le risposte precedenti hanno detto le cose in modo esplicito di collegamento, ma non è andato nei dettagli su come fare questo. Eventuali suggerimenti su come la ricerca attraverso il progetto per trovare dove fare questa correzione (ho rovinato scrivere il programma originale). Ogni aiuto è apprezzato Tom chiesto 24 Giugno 14 at 10:07 contrassegnato come duplicato da Jan Dvorak. rene. Hyde. 4dgaurav. Xan 24 giugno 14 alle 13:06 Questa domanda è stato chiesto prima e ha già una risposta. Se queste risposte non rispondono pienamente alla tua domanda, si prega di chiedere una nuova domanda. Solo perché è lo stesso errore, non significa che è la stessa causa e non dovrebbe quindi essere raggruppati insieme. Nel tuo link, hanno aggiunto un parametro così naturalmente couldn39t partita. Ma tutto quello che ho fatto è piattaforme di commutazione (nessuna modifica al codice del progetto) in modo Dritto qualcosa che non va qui. holmeswatson ndash 24 giugno 14 alle 10:27 Se questo lavoro figlio una piattaforma, ma non su un altro, poi un possibile motivo è che non avete una generazione pulita su una delle piattaforme. Per avere generazione pulita, prima di tutto pulire tutti i file aggiuntivi dalla directory di origine (ad esempio utilizzando strumenti di controllo delle versioni per rimuovere tutti i file senza versione). Questo è importante, perché il compilatore cercherà alcuni file preferntially sotto directory di origine, e se ci sono file di origine generato stantio (MOC .. ui. h. ecc) lì, verrà utilizzata al posto di quelle giuste nella directory di compilazione. Quindi assicuratevi di avere ombra costruisce abilitato Qt Creator per il progetto e la costruzione, e fare una generazione pulita. O semplicemente ottenere un checkoutclone fresco di controllo di versione in una nuova directory. Un'altra possibile ragione è l'uso di ifdef conseguente diverso risultato costruire su diverse piattaforme. O il file dei progetti. pro può anche avere sezioni condizionali, con conseguente diversi file in fase di costruzione su diverse piattaforme, o diversa compilazione comandi in uso. ha risposto 24 giugno 14 alle 12:15 2017 Stack Exchange, Inci impostare un menu QT, che è collegato automaticamente con la funzione di azione onactionOpentriggered (). Più tardi voglio passare una stringa nome di file a questa funzione, al fine di richiamare manualmente questa funzione in una condizione speciale. Così ho cambiato la firma funzione per onactionOpentriggered (const char filenamein). Dopo questa modifica il programma è in esecuzione bene, ma c'è un lamentano in terminal, QMetaObject :: connectSlotsByName: Nessun segnale di corrispondenza per onactionOpentriggered (const char) Mi chiedo che cosa è successo, e come posso aggiungere argomenti per queste funzioni di azione del menu. meccanismo AutoConnection Qt cant trovare il segnale adatto alla vostra slot. Per la voce di menu non c'è nessun segnale che dovrebbe corrispondere slot con un solo argomento, e segnale non deve avere un minor numero di argomenti di slot. È possibile modificare il nome slot in modo che non ci vorrà cercare di trovare un segnale di corrispondenza, e utilizzare QObject :: collegare direttamente invece di QMetaObject :: connectSlotsByName. Inoltre youll necessario assegnare valore di default per il vostro filenamein argomento se si desidera connettersi a lavorare con il segnale innescata. risposto 22 giugno 14 alle 20:09

No comments:

Post a Comment