Nombre d'onglets modifiable
Bonjour, pour me familiariser avec Qt, j'ai décidé de créer un editeur de texte, basique, mais il fonction (QWidget).
Je veux maintenant rendre l'interface un peu plus complexe en utilisant un QMainWindow, j'y ai ajouté les menu, et je souhaite pouvoir ouvrir plusieur document, un dans chaque onglet, j'ai donc pensé à utilise un vector et voici mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
|
#ifndef WINDOW_H
#define WINDOW_H
#include <QtGui>
#include <vector>
class Window : public QMainWindow
{
Q_OBJECT
public:
Window();
private slots:
void newDoc();
private:
QMdiArea *zoneP;
std::vector<QTextEdit*> text;
std::vector<QMdiSubWindow*> zoneText;
};
#endif // WINDOW_H |
Et dans le 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
|
#include "window.h"
Window::Window() : QMainWindow()
{
QMenu *Fichier = menuBar()->addMenu("&Fichier");
QAction *aNewDoc = Fichier->addAction("&Nouveau");
connect(aNewDoc, SIGNAL(triggered()), this, SLOT(newDoc()));
QMenu *Edition = menuBar()->addMenu("&Edition");
QMenu *Affichage = menuBar()->addMenu("&Affichage");
zoneP = new QMdiArea;
this->newDoc();
setCentralWidget(zoneP);
zoneP->setViewMode(QMdiArea::TabbedView);
}
void Window::newDoc(){
text.push_back(new QTextEdit);
zoneText.push_back(zoneP->addSubWindow(text[text.size()-1]));
} |
Quel est le roblème exact ?
Et bien quand on cree un nouveau doc, l'onglet apparait bien, mais il devient inselectionnable (grisé, inclicable).
Et je ne comprend vraiment pas pourquoi.
Merci.