|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
||||||
Сигналы и слоты25.08.2025, 13:31. Показов 2258. Ответов 23
Метки нет (Все метки)
Добавлено через 3 минуты а еще вот такое есть : qt.tlsbackend.ossl: Failed to load libssl/libcrypto. но не на что не влияет. Добавлено через 5 минут хотя по отладке переходит после нажатия на кнопку в on_pushButton_clicked(). так и в процессе отладки переходит в Result(const QUrl &url). но возвращает код 0 и по запросу пустой ответ:"0" ""
0
|
||||||
| 25.08.2025, 13:31 | |
|
Ответы с готовыми решениями:
23
Сигналы и слоты Сигналы\слоты Сигналы и слоты |
|
1131 / 727 / 194
Регистрация: 30.03.2021
Сообщений: 2,378
|
||
| 25.08.2025, 14:32 | ||
|
по первой части хз, по второй
![]() и если сигнал что-то передает, слот должен принимать такую же сигнатуру либо не принимать ничего SIGNAL(finished(QNetworkReply*)) и Result(const QUrl &url) не совпадает в такой форме записи коннекта все скомпилируется, а в рантайме выдаст ошибку в лог пиши лучше так connect(manager, &QNetworkAccessManager::finished, this, &MainWindow::Result); тогда ошибка вылетит при компиляции
0
|
||
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
|||||||||||||||||||||
| 09.10.2025, 19:19 [ТС] | |||||||||||||||||||||
|
есть такой слот:
короче, как я понял проблема из-за того что сигнал и слот из разных классов? но как их в таком случае соединить? Добавлено через 2 минуты connect(reply,&QNetworkReply::uploadProg ress,this,&MainWindow: rogressChanged);//процесс загрузкивот здесь должен быть не this естественно. Добавлено через 10 минут но что... предстоит разобраться!
0
|
|||||||||||||||||||||
| 09.10.2025, 20:02 | |
|
0
|
|
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
||||||
| 27.10.2025, 16:03 [ТС] | ||||||
|
и так вернулся я к коду и вот что у меня получилось, а точнее не получилось.
Этот сигнал отправляется для индикации хода выполнения загрузки в рамках данного сетевого запроса, если таковая имеется." есть progressBar который принимает сигнал и выполняет progressChanged. НО progressBar создается программно и находится в mainwindow.cpp, а reply находится в httprequest.cpp и такая запись говорит что progressBar необъявленный идентификатор. начитался я уже много чего но понять видимо не смог. ПОМОГИТЕЕЕЕЕЕ!!!!!!!!!!!
0
|
||||||
|
Заблокирован
|
|
| 27.10.2025, 19:52 | |
|
0
|
|
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
|
| 27.10.2025, 20:23 [ТС] | |
|
0
|
|
|
Заблокирован
|
|||
| 27.10.2025, 20:30 | |||
|
Добавлено через 3 минуты https://doc.qt.io/qt-6/qobject... onnection)
0
|
|||
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
|
| 27.10.2025, 20:52 [ТС] | |
|
я что то не понимаю?
connect(reply ----------- объект дающий сигнал ,&QNetworkReply::uploadProgress,------------сигнал progressBar,----------------объект приема сигнала &MainWindow: rogressChanged);-------------слот
0
|
|
|
Заблокирован
|
||
| 27.10.2025, 21:20 | ||
|
А сигнал, классу отправителя. Иначе как он их вызовет? Добавлено через 48 секунд То что не видно переменной progressbar это цветочки.
0
|
||
|
1131 / 727 / 194
Регистрация: 30.03.2021
Сообщений: 2,378
|
|||||||
| 27.10.2025, 21:26 | |||||||
![]() По феншую HttpFetcher не должен знать о существовании каких-либо окон (а так же выпячивать наружу свои приватные сущности), поэтому можно сделать в этом классе сигналы, дублирующие сигналы от классов, работающих с вэбом. например: Кликните здесь для просмотра всего текста
Не по теме:
0
|
|||||||
|
Заблокирован
|
|
| 27.10.2025, 21:52 | |
|
1
|
|
|
1131 / 727 / 194
Регистрация: 30.03.2021
Сообщений: 2,378
|
|||||||||||
| 27.10.2025, 23:09 | |||||||||||
|
Не по теме: SmallEvil, ахахах, ну да :) Добавлено через 1 час 5 минут MVDmitrii, вот вроде бы не особо сложное и работающее нечто, с прогресбарами. со слабой надеждой, что ты его попробуешь и разберешся Кликните здесь для просмотра всего текста
Класс, имитирующий твой фетчер, из него приходят какие-то данные в сигнале progress() myprocess.h
mainwindow.cpp
0
|
|||||||||||
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
||||||
| 28.10.2025, 18:24 [ТС] | ||||||
|
не понятно. в одном классе пишите что fetcher.... сигнал но используется как слот.
но спасибо за подсказку закинуть коннект в то место где создается progressBar, ошибок нет.
0
|
||||||
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
|
| 28.10.2025, 18:35 [ТС] | |
|
хотя значение в ответе reply уже есть
0
|
|
|
1131 / 727 / 194
Регистрация: 30.03.2021
Сообщений: 2,378
|
|
| 28.10.2025, 19:08 | |
|
MVDmitrii, этот код выше выполняется в MainWindow?
Если да, то откуда там взялся reply в коннекте? Ведь он "зашит" в HttpFetcher. В том то и смысл, что в классе HttpFetcher, (который, как я понимаю - обертка над QNetworkAccessManager), выполняются некие манипуляции с вэбом, и вот результаты таких манипуляций класс HttpFetcher должен выдавать наружу. Для этого создаются свои сигналы в HttpFetcher, которые, так сказать, перенаправляют сигналы от закрытых, внутренних сущностей класса HttpFetcher, таких как QNetworkReply и прочего. Затем создается фетчер в окне, и используются сигналы/слоты, сеттеры/геттеры именно класса HttpFetcher, никаких reply. По поводу сигналов: К сигналам в Qt можно подключать как слоты в виде функций(методов или лямбд), так и другие сигналы. Если к сигналу А подключен сигнал Б - то если срабатывает сигнал А - вызывается сигнал Б, с передачей параметров, если указано. (В профиле у тебя написано, что любишь заниматься всякими платами - так вот представь, что ты делаешь отдельную плату HttpFetcher. У нее есть какие-то входы, потом ток преобразуется платой и поступает на выходы. Вот кто-то использует твою плату - он же не впаивает проводки куда попало, но строго ко входу и выходу. Так и в классе HttpFetcher могут быть входы (сеттеры, слоты) и выходы(геттеры, сигналы)) fetcher = new HttpFetcher(this); иначе может быть утечка памяти.
0
|
|
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
|||
| 28.10.2025, 19:18 [ТС] | |||
|
0
|
|||
|
1131 / 727 / 194
Регистрация: 30.03.2021
Сообщений: 2,378
|
|||||||
| 28.10.2025, 19:33 | |||||||
Сообщение было отмечено MVDmitrii как решение
Решение
А по поводу того, что прогрессбар не изменяется - весь контекс не видно, но я подозреваю, что progressChanged() работает не с тем прогрессбаром или не видит его вообще.
Попробуй заменить коннект на такой, как я выше в примере показывал:
Добавлено через 1 минуту ![]() Не делай так. Добавлено через 12 минут reply должен жить в HttpFetcher своей жизнью, и к нему не должно быть доступа извне класса HttpFetcher. А что бы видеть результаты запросов QNetworkReply, которые выполняются внутри класса HttpFetcher - и создаются свои, "кастомные" сигналы в классе HttpFetcher, и они, эти кастомные сигналы, подключаются к "заводским" сигналам QNetworkReply. Как если бы на твоей плате есть мелкосхема QNetworkReply, и есть какое-то гнездо "выход", и вот ты подключаешь ножку мелкосхемы к разьиму гнезда (соединяешь свой сигнал класса HttpFetcher с сигналом QNetworkReply) А если обьявляешь reply глобально - это все равно что какой-то проводок к лапе подпаял и он болтается снаружи коробки - попробуй угадай зачем он. Фух, забайтил ты меня на мемуары, я курить и чилить ![]() А твое вот это вот всё из-за того, что не научился на простых примерах и мучишься теперь.
0
|
|||||||
|
2 / 2 / 0
Регистрация: 04.07.2021
Сообщений: 97
|
|||
| 28.10.2025, 21:30 [ТС] | |||
|
Добавлено через 3 минуты Добавлено через 9 минут все я спать , ни чего не понимаю
0
|
|||
| 28.10.2025, 22:52 | |
|
0
|
|
| 28.10.2025, 22:52 | |
|
Помогаю со студенческими работами здесь
20
QT4\массив динамических виджетов\сигналы и слоты ...? Не работают слоты и сигналы при наследовании QGraphicsObject Сигналы и слоты между ui и QGLwiget Сигналы и слоты в Qt многопоточны? Слоты и сигналы, работа с QLineEdit Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга,
Ты же видел моря и метели.
Как сменялись короны и стяги,
Как эпохи стрелою летели.
- Этот мир — это крылья и горы,
Снег и пламя, любовь и тревоги,
И бескрайние. . .
|
PowerShell Snippets
iNNOKENTIY21 11.11.2025
Модуль PowerShell 5. 1+ : Snippets. psm1
У меня модуль расположен в пользовательской папке модулей, по умолчанию: \Documents\WindowsPowerShell\Modules\Snippets\
А в самом низу файла-профиля. . .
|