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

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

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Проблема с окном  (Прочитано 8560 раз)
Zusykss
Гость
« : Январь 31, 2017, 20:06 »

Создаю окно, когда запускаю дальнейшее выполнение задачи и во время выполнения начинаю тягать окно за верхнюю полосу, вылетает ошибка типа Access Violation. И приходится перезапускать программу, подскажите решение)

Код:
Presenter::Presenter(QObject *parent) : QObject(parent)
{
    m_window.reset(new MainWindow(nullptr));


    QObject::connect(m_window.get(), &MainWindow::SingIn, this, &Presenter::SlotStartPostingVK);

    m_window->show();
}

Код:
  
void Presenter::SlotStartPostingVK(const QString & message)
{
    m_auth_VK.reset(new VkAuth());
    m_auth_VK->SetMessage(message);
    m_auth_VK->FillingOfGroups();
    QObject::connect(m_auth_VK.get(), &VkAuth::SignalGetErrorStr, this, &Presenter::SlotCallErrorMSG);
    QObject::connect(m_auth_VK.get(), &VkAuth::SignalFinishPosting, this, &Presenter::SlotStartPostingOK);
}
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #1 : Январь 31, 2017, 20:10 »

Мало данных. Либо больше кода давай, либо вообще приложи минимальный компилябельный пример.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #2 : Январь 31, 2017, 20:20 »

Это огрызок кода, которы ниочем не говорит. Что происходит в других классах? Используются ли потоки? Ты дебажить вообще пробовал?
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4349



Просмотр профиля
« Ответ #3 : Январь 31, 2017, 20:25 »

Вот тебе весь код.
Михаил, нельзя данные учетки выкладывать в публичный доступ. Улыбающийся
Срочно меняйте пароль. Улыбающийся
Записан
Zusykss
Гость
« Ответ #4 : Январь 31, 2017, 20:31 »

)) Спасибо, удалил и пароль сменю обязательно

Записан
Zusykss
Гость
« Ответ #5 : Январь 31, 2017, 20:34 »

Это огрызок кода, которы ниочем не говорит. Что происходит в других классах? Используются ли потоки? Ты дебажить вообще пробовал?

Дебажил, может мне создавать классы в отдельных потоках как думаете?
Потому что когда двигаю формой во время выполнения, она то зависает то вообще ошибку выдает....
Понимаю. В остальных классах потоки не создаются.
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #6 : Январь 31, 2017, 21:19 »

Это огрызок кода, которы ниочем не говорит. Что происходит в других классах? Используются ли потоки? Ты дебажить вообще пробовал?

Дебажил, может мне создавать классы в отдельных потоках как думаете?
Потому что когда двигаю формой во время выполнения, она то зависает то вообще ошибку выдает....
Понимаю. В остальных классах потоки не создаются.
Думаю, что потоки тебе вообще не нужны. Ты хотя бы скажи, какие классы в работе используешь. Да и что вообще делает твоя прога.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Zusykss
Гость
« Ответ #7 : Январь 31, 2017, 22:13 »

 std::shared_ptr<QNetworkAccessManager> m_manager;
    QNetworkCookieJar * m_jar;
    QNetworkReply * m_reply;
    QNetworkRequest m_req;
    QEventLoop m_loop;
    QList<QNetworkCookie> m_cookies;
    QByteArray m_post_arr;
    QString m_replyStr;
    QStringList m_listGroups;
    SettingManager m_setting;

Прога посылает запросы на сервер контакта и одноклассников, сначала вконтакт, а потом в одноклассники!
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #8 : Январь 31, 2017, 22:17 »

Покажи работу с m_manager. Как создаешь реквест, на что коннектишься и что делаешь в слоте завершения запроса.
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Bepec
Гость
« Ответ #9 : Февраль 01, 2017, 07:21 »

Судя по тому, что используется reset с new MainWindow, у него удаляются остальные виджеты, по которым он обращается. Если ещё не хуже, не сам класс presenter Веселый
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4349



Просмотр профиля
« Ответ #10 : Февраль 01, 2017, 10:09 »

Судя по тому, что используется reset с new MainWindow, у него удаляются остальные виджеты, по которым он обращается. Если ещё не хуже, не сам класс presenter Веселый
По которым кто обращается?
Записан
panAlexey
Гипер активный житель
*****
Offline Offline

Сообщений: 864

Акцио ЗАРПЛАТА!!!!! :(


Просмотр профиля
« Ответ #11 : Февраль 01, 2017, 11:37 »

)) Спасибо, удалил и пароль сменю обязательно
Не успел, можешь повторить?
Записан

Win Xp SP-2, Qt4.3.4/MinGW. http://trdm.1gb.ru/
Bepec
Гость
« Ответ #12 : Февраль 01, 2017, 12:54 »

Он.
Записан
Zusykss
Гость
« Ответ #13 : Февраль 01, 2017, 20:13 »

Судя по тому, что используется reset с new MainWindow, у него удаляются остальные виджеты, по которым он обращается. Если ещё не хуже, не сам класс presenter Веселый
По которым кто обращается?


Проблема в том, что при выполнение программы, именно когда выполняются функции в класса VkAuth и OkAuth, я начинаю двигать форму, может вылететь ASSERT. А если я её не трогаю, все работает отлично, и никакие ошибки не появляются. Я не думаю что это из за === reset(MainWindow)....
Записан
Old
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4349



Просмотр профиля
« Ответ #14 : Февраль 01, 2017, 20:45 »

Цитата: Zusykss link=topic=30958.msg229263#msg229263
Я не думаю что это из за === reset(MainWindow)....
Конечно нет.

Цитата: Zusykss link=topic=30958.msg229263#msg229263
Проблема в том, что при выполнение программы, именно когда выполняются функции в класса VkAuth и OkAuth, я начинаю двигать форму, может вылететь ASSERT. А если я её не трогаю, все работает отлично, и никакие ошибки не появляются.
Не знаю как в новых, а в старых вендах, в момент перетаскивания окна блокировалась обработка событий. Возможно в этом дело.
Запустите программу под отладчиком и пусть она упадет, отладчик покажет место падения.
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


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