« Programmation Qt/TP : un éditeur de texte » : différence entre les versions
Contenu supprimé Contenu ajouté
m + notification |
→Découvrir le projet : Complétion ; suppression de la notification (je veux être sûr que ça marche avant de mettre). |
||
Ligne 7 : | Ligne 7 : | ||
=== Ouvrir un fichier === |
=== Ouvrir un fichier === |
||
Nous allons donc commencer par l'ouverture du fichier. On utilise la classe <code>QFile</code>. |
Nous allons donc commencer par l'ouverture du fichier. On utilise la classe <code>QFile</code>. Pour cela, on va ouvrir le fichier avec la boîte de dialogue <code>QFileDialog</code>.<syntaxhighlight lang="c++" line="1" start="1"> |
||
QString *fileName = QFileDialog::getOpenFileName(this, "Ouvrir un fichier", QString()); |
|||
QFile *file = new QFile(fileName); |
|||
</syntaxhighlight> |
|||
=== |
=== Lire le fichier === |
||
C'est très simple. On va vérifier que le fichier n'a pas de problèmes, puis on va mettre le contenu dans un <code>QTextStream</code>.<syntaxhighlight lang="c++" line="1" start="1"> |
|||
if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) |
|||
return; |
|||
QTextStream fileContent(file); |
|||
</syntaxhighlight>À présent, je vous laisse, puisqu'on va utiliser une classe que vous connaissez déjà, <code>QTextEdit</code>. |
|||
=== |
=== Enregistrer un fichier === |
||
<syntaxhighlight lang="c++" line="1" start="1"> |
|||
QString file = QFileDialog::getSaveFileName(this, "Enregistrer un fichier", QString()); |
|||
system("notify-send 'The Message Title' 'Your Message Text' '-t' 5000"); |
|||
</syntaxhighlight> |
</syntaxhighlight> |
||
== Correction == |
|||
Maintenant que vous savez tout, voici la correction. |
Version du 25 mai 2019 à 08:53
Dans ce TP, vous apprendrez à créer un éditeur de texte.
Découvrir le sujet
Avant d'attaquer ce TP, il est important de connaître le sujet.
Ouvrir un fichier
Nous allons donc commencer par l'ouverture du fichier. On utilise la classe QFile
. Pour cela, on va ouvrir le fichier avec la boîte de dialogue QFileDialog
.
QString *fileName = QFileDialog::getOpenFileName(this, "Ouvrir un fichier", QString());
QFile *file = new QFile(fileName);
Lire le fichier
C'est très simple. On va vérifier que le fichier n'a pas de problèmes, puis on va mettre le contenu dans un QTextStream
.
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;
QTextStream fileContent(file);
À présent, je vous laisse, puisqu'on va utiliser une classe que vous connaissez déjà, QTextEdit
.
Enregistrer un fichier
QString file = QFileDialog::getSaveFileName(this, "Enregistrer un fichier", QString());
Correction
Maintenant que vous savez tout, voici la correction.