Création d'un éditeur de texte
Bonjour à tous !
Actuellement, j'apprends Qt et je souhaite crée un éditeur de texte
multi-documents.
J'ai crée ma fenêtre avec un QMainWindow.
Je voulais savoir comment je pourrais faire ma fonction permettant d'ouvrir mon fichier(fonction créant une nouvelle sous-fenêtre sous forme d'onglet) car je ne sais pas comment faire !
Merci à tous !
Je sais crée des sous-fenêtre mais je les crée en leur donnant un nom ect...
Mais la je ne sais pas comment je peut mi prendre.
Merci de m'aider !
Je vous passe me code actuel :
main.cpp :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| #include <QApplication>
#include "FenetrePrincipale.h"
int main(int argc, char* argv[])
{
QApplication app(argc, argv);
FenetrePrincipale fenetre;
fenetre.show();
//fenetre.setFocus();
return app.exec();
} |
FenetrePrincipale.h :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
| #ifndef HEADER_FENETREPRINCIPALE
#define HEADER_FENETREPRINCIPALE
#include <QtGui>
class FenetrePrincipale : public QMainWindow
{
public:
FenetrePrincipale();
private:
//PARTIE 1 MENU
QMenu *menuFichier;
QAction *actionOpen;
QAction *actionClose;
QAction *actionSave;
QAction *actionSaveAs;
QAction *actionExit;
QMenu *menuEdition;
QAction *actionUndo;
QAction *actionRedo;
QAction *actionCut;
QAction *actionCopy;
QAction *actionPaste;
QAction *actionSelectAll;
QMenu *menuAffichage;
QAction *actionSatusBar;
QAction *actionToolsBar;
QMenu *menuOutils;
QMenu *sousMenuLangue;
QAction *actionFrancais;
QAction *actionAnglais;
QMenu *menuAide;
QAction *actionAbout;
QToolBar *toolBar;
//PARTIE 2 ZONE CENTRALE :
//On modifie en mdi :
/*QMdiArea *zoneCentrale;
//On ajoute la sous fenetre 1 :
QMdiSubWindow *sousFenetre1;
QTextEdit *zoneTexte1;
//On ajoute la sous fenetre 2 :
QMdiSubWindow *sousFenetre2;
QTextEdit *zoneTexte2;*/
};
#endif |
FenetrePrincipale.cpp :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
| #include "FenetrePrincipale.h"
FenetrePrincipale::FenetrePrincipale() : QMainWindow()
{
setWindowTitle("Editim - v1");
setMinimumSize(450, 400);
//PARTIE 1 MENU
menuFichier = menuBar()->addMenu("&Fichier");
//Action du menu Fichier :
actionOpen = menuFichier->addAction("Ouvrir");
actionClose = menuFichier->addAction("Fermer");
menuFichier->addSeparator();
actionSave = menuFichier->addAction("Enregistrer");
actionSaveAs = menuFichier->addAction("Enregistrer Sous ...");
menuFichier->addSeparator();
actionExit = menuFichier->addAction("Quitter");
//Racourci des Action :
actionOpen->setShortcut(QKeySequence("Ctrl+O"));
actionClose->setShortcut(QKeySequence("Ctrl+F"));
actionSave->setShortcut(QKeySequence("Ctrl+S"));
actionSaveAs->setShortcut(QKeySequence("Ctrl+Shift+S"));
actionExit->setShortcut(QKeySequence("Ctrl+Q"));
//Icones :
actionOpen->setIcon(QIcon("images/open.png"));
actionClose->setIcon(QIcon("images/close.png"));
actionSave->setIcon(QIcon("images/save.png"));
actionSaveAs->setIcon(QIcon("images/save-as.png"));
actionExit->setIcon(QIcon("images/exit.png"));
menuEdition = menuBar()->addMenu("&Edition");
//Action du menu Edition :
actionUndo = menuEdition->addAction("Annuler");
actionRedo = menuEdition->addAction("Rétablir");
menuEdition->addSeparator();
actionCut = menuEdition->addAction("Couper");
actionCopy = menuEdition->addAction("Copier");
actionPaste = menuEdition->addAction("Coller");
menuEdition->addSeparator();
actionSelectAll = menuEdition->addAction("Tout sélectionner");
//Racourci des Actions :
actionUndo->setShortcut(QKeySequence("Ctrl+Z"));
actionRedo->setShortcut(QKeySequence("Ctrl+Y"));
actionCut->setShortcut(QKeySequence("Ctrl+X"));
actionCopy->setShortcut(QKeySequence("Ctrl+C"));
actionPaste->setShortcut(QKeySequence("Ctrl+V"));
actionSelectAll->setShortcut(QKeySequence("Ctrl+A"));
//Icones :
actionUndo->setIcon(QIcon("images/undo.png"));
actionRedo->setIcon(QIcon("images/redo.png"));
actionCut->setIcon(QIcon("images/cut.png"));
actionCopy->setIcon(QIcon("images/copy.png"));
actionPaste->setIcon(QIcon("images/paste.png"));
menuAffichage = menuBar()->addMenu("&Affichage");
//Action du menu d'Affichage :
actionSatusBar = menuAffichage->addAction("Bar de status");
actionToolsBar = menuAffichage->addAction("Bar d'outils");
//On Lui dit qu'il est cochable
actionSatusBar->setCheckable(true);
actionToolsBar->setCheckable(true);
//on initialise si elle son coché ou non :
actionSatusBar->setChecked(true);
actionToolsBar->setChecked(false);
menuOutils = menuBar()->addMenu("&Outils");
//On crée un sous menu :
sousMenuLangue = menuOutils->addMenu("Langue");
//On crée les action dans le sous menu :
actionFrancais = sousMenuLangue->addAction("Français");
actionAnglais = sousMenuLangue->addAction("Anglais");
menuAide = menuBar()->addMenu("&Aide");
//On crée l'action :
actionAbout = menuAide->addAction("A Propos de Editim");
//On crée le racourci :
actionAbout->setShortcut(QKeySequence("F1"));
actionAbout->setIcon(QIcon("images/about.png"));
toolBar = addToolBar("Bar d'outils");
toolBar->addAction(actionExit);
//On connect les signaux au slot :
connect(actionExit, SIGNAL(triggered()), qApp, SLOT(quit()));
//PARTIE 2 ZONE CENTRALE :
/*
zoneCentrale = new QMdiArea;
zoneCentrale->setViewMode(QMdiArea::TabbedView);//On modifie les sous fenetre en onglet
zoneTexte1 = new QTextEdit;
zoneTexte2 = new QTextEdit;
sousFenetre1 = zoneCentrale->addSubWindow(zoneTexte1);
sousFenetre2 = zoneCentrale->addSubWindow(zoneTexte2);
sousFenetre1->setWindowTitle("Sous Fenêtre 1");
sousFenetre2->setWindowTitle("Sous Fenêtre 2");
setCentralWidget(zoneCentrale);
*/
} |
(Vous remarquerez que je suis que au début du programme et je n'est pas fini la construction de la tools bar. ect...)
Merci à tous ce qui m'aideront.
Timiti29