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 :
FenetrePrincipale.h :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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.cpp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
(Vous remarquerez que je suis que au début du programme et je n'est pas fini la construction de la tools bar. ect...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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); */ }
Merci à tous ce qui m'aideront.
Timiti29
Partager