Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
1 / 1 / 0
Регистрация: 04.03.2013
Сообщений: 22

При создании иконки выдаёт в консоль "QPixmap: It is not safe to use pixmaps"

22.04.2013, 23:56. Показов 1301. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть класс
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
class MainForm(QtGui.QMainWindow):
    def __init__(self, api, parent):
        super(MainForm, self).__init__()
        threding.Thread(target=self.setList1).start()
        threding.Thread(target=self.setList2).start()
        threding.Thread(target=self.setList3).start()
 
    def setList1(self):
        files = ['ba.jpg', 'ab.jpg', ....]
        for file in files:
            icon = QIcon(file)
            item = QListWidgetItem(icon, 'картинка')
            self.list2.addItem(item)
 
    def setList2(self):
        files = ['bab.jpg', 'abb.jpg', ....]
        for file in files:
            icon = QIcon(file)
            item = QListWidgetItem(icon, 'картинка')
            self.list3.addItem(item)
 
    def setList3(self):
        files = ['baz.jpg', 'abz.jpg', ....]
        for file in files:
            icon = QIcon(file)
            item = QListWidgetItem(icon, 'картинка')
            self.list1.addItem(item)
Суть такая: на форме несколько QListWidget, в которые я добавляю элементы. Разделил на несколько потоков т.к. картинки в files грузятся с интернета. Код работает. Но не суть. Проблема в
Code
1
QPixmap: It is not safe to use pixmaps outside the GUI thread
которое спамится в окно консоли каждый раз когда я создаю иконку QIcon(...) в методах этого класса, которые запустил в отдельных потоках.
Почемуто
Python
1
sys.stdout = open('log', 'w')
и
Python
1
sys.stderr = open('log', 'w')
не решают проблему.
Я понимаю что это выводится изза того что я методы запускаю в потоке через threading, и без этого никак.
Хотелось бы узнать как обойти эту проблему

Добавлено через 7 часов 14 минут
Разобрался. Нужно с помощью сигналов установить иконку у item вне потока.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.04.2013, 23:56
Ответы с готовыми решениями:

Падает консоль при создании мгновенной задачи
День добрый. столкнулся со следующей проблемой. создаю imediate task на запуск приложения. при выборе ехе через диалог консоль гпо...

При создании бинарного поиска выдаёт 0
При выполнении бинарного поиска выдаёт всегда значение 0 using System; namespace ConsoleApp2 { class Programm { ...

При создании массива выдает ошибку
public class Main { public static void main(String args) { // TODO code application logic here ...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.04.2013, 23:56
Помогаю со студенческими работами здесь

Выдает ошибку при создании матрицы
Выводит такую ошибку : Ошибка CS0136 Локальная переменная или параметр с именем "i" нельзя объявить в данной области, так как это...

При создании ods выдает ошибку
Всем привет. Пытаюсь освоить создание ods. при компиляции выдает следующую ошибку: "Сборка для смешанного режима построена на основе...

Выдает ошибку при создании БД в VS 2012
Доброго всем утра! Вот решил перейти на VS 2012 и что-то не получается создать базу данных..я уже и так и этак:( подскажите пожалуйста, что...

Выдает ошибку при создании модуля
у меня задача создать программу и 3 модуля с расширение .h я создал все три, первые 2 отлично работают, но когда я создал и подключил...

При создании virtual device выдает ошибку
Создаю virtual device в Android Studio 1.0, а оно не дает возможности его запустить и при просмотре деталей выдает ошибку:


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru