Apertura file con editor di testo



  • Salve a tutti...ho sviluppato un piccolo editor di testo con qt...dal programma, con il dialog open file riesco ad aprire i file di testo per visualizzarli sul notepad, solo che se clicco su un file di testo col tasto destro e faccio "apri con il mio notepad" al suo interno non visualizzo niente....qualcuno saprebbe dirmi il perchè? grazie in anticipo



  • Ad occhio e croce, sembrerebbe che l'applicazione che usi per invocare l'editor (il tuo filemanager) non stia passando al tuo editor il nome del file da aprire o, più probabilmente, che il tuo editor stia ignorando il parametro che gli viene passato.

    Di solito, quando si usa questa tecnica, dietro le quinte viene invocato un comando come questo:

    $ MyEditor.exe C:\MyDir\MyFile.txt

    L'esatta sintassi dipende dal sistema operativo su cui ti trovi. (Questo comando può essere eseguito dalla shell per verificare che funzioni)

    Ovviamente, il tuo editor deve poi "catturare" questo parametro sulla sua linea di comando ed utilzzarlo per aprire il file.



  • Ho eseguito il comando dalla shell di CMD di windows 7 ma niente da fare...si apre il programma con la pagina vuota...come faccio a far si che il programma non ignori questo parametro?



  • Scusa ma non passi tu il percorso del file al tuo programma Qt? Un controllino rapido di quando il programma viene invocato con più parametri...



  • Devi scrivere il codice che lo gestisce. Come prima cosa, devi "catturare" il parametro in una variabile, poi lo utilizzi nel tuo codice per aprire il file.

    Prova a leggere la documentazione dove parla dei parametri ("argomenti") provenienti dalla riga di comando ("command line arguments"):

    "Command Line Arguments":http://doc.qt.digia.com/latest/qcoreapplication.html#arguments

    Oppure cerca qualche caso simile tra i post del forum, come qui:

    "Starting a GUI program through Terminal with Arguments":http://qt-project.org/forums/viewthread/11423

    Gli argomenti della riga di comando sono accessibili sia da C/C++ (via argc ed argv) che da Qt (via QCoreApplication::arguments) ma credo che sia meglio usare le funzionalità specifiche di Qt.



  • Si direi a occhio che il tuo editor non fa nessuna analisi degli argomenti da riga di comando.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.