Intruder
Intruder18 декабря 2019 г. 6:47

QTabWibget удаление вкладки из стека QTabWidget

Всем доброго времени суток.
Что я делаю неправильно при удалении вкладки?

void MainTabWidget::on_MainTabWidget_tabCloseRequested(int index)
{
    removeTab(index);
    if(currentIndex() != -1){
        windowTitle = tr("Main window | ") + tabText(currentIndex());
    }else {
        windowTitle = tr("Main window");
        emit sendMenuToolsFlag(false);
    }
    emit sendWindowTitle(windowTitle);
    emit sendStatusBar(tabText(currentIndex()));
}

Но если я потом открою еще одну такую же вкладку (после удаления), то в стеке остается предыдущая, которая удаленная.
Вот так я создаю новую вкладку:

void MainTabWidget::actionOpenWrngObject()
{
    QString filename = QFileDialog::getOpenFileName(this, QString::fromUtf8("Open file"), QDir::currentPath(), "wiring data (*.xml *.XML *.Xml);;All files (*.*)");
    if(filename.isEmpty()){
        return;
    }
    QFileInfo fileInfo = filename;
    for (int ind = 0; ind < count(); ind++) {
        if(tabText(ind) == fileInfo.fileName()){
            setCurrentIndex(ind);
            return;
        }
    }
    objectwidget *newObjectWidgetPage = new objectwidget(this);
    newObjectWidgetPage->setWindowTitle(fileInfo.fileName());
    newObjectWidgetPage->setObjectName(fileInfo.fileName());
    newObjectWidgetPage->setFilename(filename);
    newObjectWidgetPage->import_data(&filename);
    if(!newObjectWidgetPage->error()){
        addTab(newObjectWidgetPage, newObjectWidgetPage->windowTitle());
        QString tabTitle = tr("Main window | ") +this->tabText(currentIndex());
        emit sendWindowTitle(tabTitle);
        emit sendStatusBar("Open file: " + filename);
        emit sendMenuToolsFlag(true);
        newObjectWidgetPage->add_actions(m_toolsActions);
        setCurrentWidget(newObjectWidgetPage);
        connect(this, SIGNAL(createNewWrngObject()), SLOT(show_selectDialog()));
        connect(this, SIGNAL(actionEditWrngObject()), newObjectWidgetPage, SLOT(action_edit()));
        connect(this, SIGNAL(actionDeleteWrngObject()), newObjectWidgetPage, SLOT(action_delete()));
    }else {
        newObjectWidgetPage->deleteLater();
        QMessageBox::critical(new QWidget(),tr("Error"),tr("The file is not valid!"));
        if(currentIndex() == -1){
            emit sendWindowTitle(tr("Main window"));
            return;
        }else {
            emit sendWindowTitle(tr("Main window | ") + tabText(currentIndex()));
            emit sendStatusBar(tabText(currentIndex()));
        }
    }
}

Заранее благодарю за помощь!

Рекомендуем хостинг TIMEWEB
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.

Вам это нравится? Поделитесь в социальных сетях!

0

Комментарии

Только авторизованные пользователи могут публиковать комментарии.
Пожалуйста, авторизуйтесь или зарегистрируйтесь
AD

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:50баллов,
  • Очки рейтинга-4
m
  • molni99
  • 26 октября 2024 г. 1:37

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:80баллов,
  • Очки рейтинга4
m
  • molni99
  • 26 октября 2024 г. 1:29

C++ - Тест 004. Указатели, Массивы и Циклы

  • Результат:20баллов,
  • Очки рейтинга-10
Последние комментарии
i
innorwall11 ноября 2024 г. 22:12
Django - Урок 055. Как написать функционал auto populate field Freckles because of several brand names retin a, atralin buy generic priligy
i
innorwall11 ноября 2024 г. 18:23
QML - Урок 035. Использование перечислений в QML без C++ priligy cvs 24 Together with antibiotics such as amphotericin B 10, griseofulvin 11 and streptomycin 12, chloramphenicol 9 is in the World Health Organisation s List of Essential Medici…
i
innorwall11 ноября 2024 г. 15:50
Qt/C++ - Урок 052. Кастомизация Qt Аудио плеера в стиле AIMP It decreases stress, supports hormone balance, and regulates and increases blood flow to the reproductive organs buy priligy online safe Promising data were reported in a PDX model re…
i
innorwall11 ноября 2024 г. 14:19
Алгоритм сортировки кучей The role of raloxifene in preventing breast cancer priligy precio
i
innorwall11 ноября 2024 г. 13:55
PyQt5 - Урок 006. Работа с QTableWidget buy priligy 60 mg 53 have been reported by Javanovic Santa et al
Сейчас обсуждают на форуме
i
innorwall11 ноября 2024 г. 20:56
добавить qlineseries в функции buy priligy senior brother Chu He, whom he had known for many years
i
innorwall11 ноября 2024 г. 10:55
Всё ещё разбираюсь с кешем. priligy walgreens levitra dulcolax carbs The third ring was found to be made up of ultra relativistic electrons, which are also present in both the outer and inner rings
9
9Anonim25 октября 2024 г. 9:10
Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…
ИМ
Игорь Максимов3 октября 2024 г. 4:05
Реализация навигации по разделам Спасибо Евгений!

Следите за нами в социальных сетях