Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: sid от Сентябрь 29, 2017, 12:04



Название: Разрыв коннекта при лямбда функции
Отправлено: sid от Сентябрь 29, 2017, 12:04
if( textCommentDlg == nullptr )  {

            DBG << "Text Comment Dlg";
            emit typeingComment(isTypingComment = true);
            textCommentDlg = new QTextCommentDlg();
            textCommentDlg->setWindowModality (Qt::WindowModal);
            textCommentDlg->show();
            textCommentDlg->move (pos);

            connect(textCommentDlg, &QTextCommentDlg::sendTextComment,
                    this,  [=](TextCommentDTO txt)
                    {
                        DBG << txt.text << txt.pos;
                        m_textComment = txt;
                        m_textComment.pos = pos;
                        textCommentDlg->deleteLater ();

                        if (m_textComment.text != "empty")   {
                            DBG << m_textComment.text;
                            emit sendTextComment(m_textComment);
                            emit listenMousePress(listenClick = false);
                            emit typeingComment(isTypingComment = false);
                         }
                    });
        }
есть такой кусок, при нажатии на кнопку создаю диалог дабиваю туда комментарий с параметрами шрифтов и т.д и когда
идет выход из диалога закидываю комментарий в SceneView ... меня волнует открытый connect - будет ли он разрываться после уничтожения окна?
Спасибо!


Название: Re: Разрыв коннекта при лямбда функции
Отправлено: sergek от Сентябрь 29, 2017, 12:38
Все соединения объекта разрываются при его уничтожении автоматически.


Название: Re: Разрыв коннекта при лямбда функции
Отправлено: sid от Сентябрь 29, 2017, 13:09
спасибо!