Как узнать путь к файлу, который был открыт в каждом подокне mdi?

0

У меня есть следующее MDI application:

Изображение 174551

Каждое sub Window имеет содержимое другого файла.
Когда мы хотим сохранить содержимое активного окна, мы хотим узнать путь к файлу, который открывается в активном окне.

Как узнать путь к файлу, который был открыт в активном subWindow или любом другом subWindow?

Теги:
qt
qt5

2 ответа

0
Лучший ответ

Вы можете установить путь как пользовательское свойство виджета, используя QObject::setProperty, а затем получить его с помощью QObject::property. QMdiSubWindow не имеет понятия открытого файла. Это просто виджет MDI. Кто-то может использовать его для отображения сегодняшней погоды, а не содержимого какого-либо конкретного файла.

  • 0
    Я думаю, что ваш ответ проще и понятнее.
1

Он полностью потребовал ваше выражение.

QMdiSubWindow содержит только QWidget. Конечно, имея путь к файлу, это не является обязательным для q QWidget. В моем компоненте pqSource я использую разные классы, и у меня есть класс MdiHelper, реализующий типизированную "коллекцию" подокнов:

template<class T>
QList<T*> typedSubWindows() const
{
    QList<T*> l;
    foreach (auto w, mdiArea()->subWindowList())
        if (auto s = qobject_cast<T*>(w->widget()))
            l << s;
    return l;
}

Некоторые из этих виджетов имеют путь к файлу...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню