Russian Qt Forum
Ноябрь 22, 2024, 23:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: свернутое окно в MDI  (Прочитано 10761 раз)
mokynis
Самовар
**
Offline Offline

Сообщений: 176


Просмотр профиля
« : Август 08, 2018, 11:40 »

с MDI редко сталкивался. Открываю SubWindow в MDIArea. Жму кнопку "свернуть", потом жму "восстановить" (или "на всю область"-не важно). Дочернее окно открывается пустое. Как будто только что созданное. Как это победить? QT4, Debian
Записан

QT4, Qt5, Qt6 Debian, ArchLinux
nvek
Гость
« Ответ #1 : Август 10, 2018, 10:46 »

А эта таблица - tableView? и там есть модель?
Записан
mokynis
Самовар
**
Offline Offline

Сообщений: 176


Просмотр профиля
« Ответ #2 : Август 10, 2018, 16:24 »

да это вообще не важно. Вот форма-обычный Dialog с QLabel на нем. Та же картина
Записан

QT4, Qt5, Qt6 Debian, ArchLinux
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #3 : Сентябрь 05, 2018, 11:49 »

А как вы устанавливали встроенные виджеты? Через setCentalWidget?
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #4 : Сентябрь 06, 2018, 07:12 »

Я бы ещё родителей пропавших перепроверил бы
Записан
mokynis
Самовар
**
Offline Offline

Сообщений: 176


Просмотр профиля
« Ответ #5 : Сентябрь 18, 2018, 13:51 »

Цитировать
как вы устанавливали встроенные виджеты?
в редакторе форм
Цитировать
Я бы ещё родителей пропавших перепроверил бы
не пойму, где их искать. После нажатия "развернуть" он вообще ни в одну функцию не заходит, вроде их и нет. Собственно, их и нет на самом деле. Даже конструктор не запускается
Записан

QT4, Qt5, Qt6 Debian, ArchLinux
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #6 : Сентябрь 19, 2018, 09:18 »

Как выглядит создание окон? Покажите код
Записан
mokynis
Самовар
**
Offline Offline

Сообщений: 176


Просмотр профиля
« Ответ #7 : Сентябрь 19, 2018, 11:35 »

это выбираем пункт меню "о программе"
Код:
void MainWindow::slotAbout()
{
    about *finf=new about();
    ui->mdiArea->addSubWindow(finf);
    finf->show();
    if(finf->exec()==QDialog::Rejected){}
    delete finf;
}
а это реализация формы
Код:
#include "about.h"
#include "ui_about.h"

about::about(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::about)
{
    ui->setupUi(this);
    ui->label->setText("Программа ....\n"
                       "Разработана для ...\n"
                       "Использование запрещено.");
}

about::~about()
{
    delete ui;
}
Записан

QT4, Qt5, Qt6 Debian, ArchLinux
demal
Чайник
*
Offline Offline

Сообщений: 53


Просмотр профиля
« Ответ #8 : Сентябрь 19, 2018, 12:11 »


мне кажется проще:

    about *finf=new about();
    finf->setAttribute(Qt::WADeleteOnClose);
    ui->mdiArea->addSubWindow(finf);
    finf->show();
Записан
mokynis
Самовар
**
Offline Offline

Сообщений: 176


Просмотр профиля
« Ответ #9 : Сентябрь 19, 2018, 14:47 »

Цитировать
мне кажется проще:
не буду спорить, но вопрос не об этом, а о том, что после сворачивания форма открывается без виджетов на ней
Записан

QT4, Qt5, Qt6 Debian, ArchLinux
demal
Чайник
*
Offline Offline

Сообщений: 53


Просмотр профиля
« Ответ #10 : Сентябрь 19, 2018, 17:48 »

А ты когда редактируешь форму, ты в ней компоновку общую для всей формы задаешь? У меня нет таких глюков, но в каждом дочернем окне, которое я вставляю в MDI в дизайнере в обязательном порядке в целом для всего окна задаётся компановка.
Записан
mokynis
Самовар
**
Offline Offline

Сообщений: 176


Просмотр профиля
« Ответ #11 : Сентябрь 20, 2018, 08:29 »

а как же
Записан

QT4, Qt5, Qt6 Debian, ArchLinux
demal
Чайник
*
Offline Offline

Сообщений: 53


Просмотр профиля
« Ответ #12 : Сентябрь 20, 2018, 08:39 »

Это ты чего обвел?
Записан
__Heaven__
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2130



Просмотр профиля
« Ответ #13 : Сентябрь 20, 2018, 09:07 »

Код
C++ (Qt)
about *finf=new about(ui->mdiArea);
 
может так получится?
Записан
mokynis
Самовар
**
Offline Offline

Сообщений: 176


Просмотр профиля
« Ответ #14 : Сентябрь 20, 2018, 10:07 »

Цитировать
Это ты чего обвел?
эти значки указывают на то, что можно отменить компоновку, т.е. она имеется и именно для всей формы
Цитировать
может так получится?
тот же результат-пустая форма
Записан

QT4, Qt5, Qt6 Debian, ArchLinux
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.122 секунд. Запросов: 23.