Quantcast
Channel: QtWebEngine
Viewing all articles
Browse latest Browse all 13965

Memory problem and strange behaviour

$
0
0
Hi, I’m quite new with Qt, and I have some issues with my program. Some executions end without any errors, and others don’t. Sometimes, the debug consol print a lot of lines, like there are a memory leak, sometimes the app stop promptly. I don’t know why, I started to observ this behaviour after adding a layout on the “preference window”. This is my code : main.cpp #include <QtWidgets> #include <QLineEdit> #include <QToolButton> #include <MainWindow.h>     int main(int argc, char *argv[]) {     QApplication app(argc, argv);     MainWindow window;     window.show();     return app.exec(); } MainWindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H   #include <QtWidgets> #include <QMenu> #include <QToolBar> #include <QTabWidget> #include <QAction>     class MainWindow : public QMainWindow {     Q_OBJECT public:     MainWindow(); private slots:     void newWindow();     void openPreferencesMenu(); private:     /*     QMenu *fileMenu;     QToolBar *fileToolBar;     QToolBar *editToolBar;     */     QMenu *fileMenu;     QMenu *editMenu;       QAction *newAct;     QAction *editAct; };     #endif // MAINWINDOW_H PreferenceWindow.h #define PREFERENCEWINDOW_H   #include <QtWidgets>   class PreferenceWindow : public QDialog {     Q_OBJECT public:     PreferenceWindow(); private:     QLineEdit *programPath;     QLabel *programPathLabel;       QLineEdit *programDefaultOptions;     QLabel * programDefaultOptionsLabel;       QFormLayout *layout;     QPushButton *acceptButton;     QPushButton *cancelButton; };   #endif // PREFERENCEWINDOW_H MainWIndow.cpp #include <PreferenceWindow.h> MainWindow::MainWindow() {     fileMenu = menuBar()->addMenu(tr("&File"));     editMenu = menuBar()->addMenu(tr("&Edit"));     newAct=new QAction(QIcon("images/new.png"), tr("&New"), this);     newAct->setShortcuts(QKeySequence::New);     newAct->setStatusTip(tr("Create a new file"));     editAct = new QAction(tr("&Edit"), this);     editAct->setShortcuts(QKeySequence::Preferences);     editAct->setStatusTip(tr("Set preferences"));     connect(newAct, SIGNAL(triggered()), this, SLOT(newWindow()));     connect(editAct, SIGNAL(triggered()), this, SLOT(openPreferencesMenu()));     fileMenu->addAction(newAct);     editMenu->addAction(editAct);   }     void MainWindow::openPreferencesMenu() {     PreferenceWindow *p = new PreferenceWindow(); }   void MainWindow::newWindow() {       MainWindow *w=new MainWindow();     w->setAttribute(Qt::WA_DeleteOnClose);     w->move(x()-10,y()-10);     w->show(); } PreferenceWindow.cpp #include <PreferenceWindow.h> #include <QHBoxLayout> PreferenceWindow::PreferenceWindow() {       this->setModal(true);     programPath= new QLineEdit(this);     programPathLabel=new QLabel(tr("program path : "), this);     layout=new QFormLayout();       programDefaultOptions=new QLineEdit(this);     programDefaultOptionsLabel=new QLabel(tr("Default options :"),this);     acceptButton = new QPushButton(tr("Accept"));     cancelButton = new QPushButton(tr("Cancel"));       layout->addRow(programPathLabel, programPath);     layout->addRow(programDefaultOptionsLabel, programDefaultOptions);     layout->addRow(acceptButton, cancelButton);       this->setLayout(layout);     connect(acceptButton, SIGNAL(clicked()), this, SLOT(accept()));     connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));       this->show(); } Thanks, Saroupille.

Viewing all articles
Browse latest Browse all 13965

Trending Articles