Форум программистов, компьютерный форум, киберфорум
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
45 / 39 / 24
Регистрация: 29.11.2013
Сообщений: 145
PyQt5

DrawText рисует только на виджете, на иконке в трее только полотно без текста

18.11.2024, 20:00. Показов 727. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
28
29
30
31
32
33
from PyQt5.QtCore import Qt
from PyQt5.QtGui import QPainter, QPixmap, QIcon
from PyQt5.QtWidgets import QApplication, QWidget, QSystemTrayIcon
import sys
 
class DrawingWidget(QWidget):
    def __init__(self):
        super().__init__()
 
    def paintEvent(self, event):
 
        painter = QPainter(self)
 
        pixmap = QPixmap(24, 24)
        pixmap.fill(Qt.white)
 
        painter.drawPixmap(0, 0, pixmap)
        painter.drawText(pixmap.rect(),Qt.AlignCenter,"Hi!")
        painter.end()
 
        icon = QIcon()
        icon.addPixmap(pixmap)
 
        ticon = QSystemTrayIcon(self)
        ticon.setIcon(icon)
        ticon.setToolTip("Hi!")
        ticon.setVisible(True)
 
if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = DrawingWidget()
    window.show()
    sys.exit(app.exec_())
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.11.2024, 20:00
Ответы с готовыми решениями:

Проверка ввода текста (без пробелов и только буквы или только цифры)
Вводить имя, учитывая проверки. Помогите написать проверки. char name; do{ cout << "Enter name:" << endl; ...

Двойной клик по иконке в трее
Я сделал иконку в трее с помощью команды: self.tray_icon = QSystemTrayIcon(self) ...

Написать число на иконке в трее
Добрый день! В трее отображается иконка программы. Мне нужно написать произвольное число поверх иконки. Понятное дело, заранее...

1
963 / 718 / 276
Регистрация: 10.12.2016
Сообщений: 1,764
18.11.2024, 23:38
Лучший ответ Сообщение было отмечено ivsatel как решение

Решение

Цитата Сообщение от ivsatel Посмотреть сообщение
icon.addPixmap(pixmap)
там еще флаги есть
https://doc.qt.io/qt-6/qicon.html#addPixmap
если вы рисуете на пиксмапе - paintEvent необязателен
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
from PyQt5.QtWidgets import QApplication, QWidget, QSystemTrayIcon
import sys
 
class DrawingWidget(QWidget):
    def __init__(self):
        super().__init__()
        pixmap = QPixmap(40, 40)
        pixmap.fill(Qt.yellow)
 
        painter = QPainter()
        painter.begin(pixmap)
        painter.drawText(pixmap.rect(),Qt.AlignCenter,"Hi!")
        painter.end()
 
        icon = QIcon()
        icon.addPixmap(pixmap)
 
        ticon = QSystemTrayIcon(self)
        ticon.setIcon(icon)
        ticon.setToolTip("Hi!")
        ticon.setVisible(True)
 
if __name__ == "__main__":
    app = QApplication(sys.argv)
    window = DrawingWidget()
    window.show()
    sys.exit(app.exec_())
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.11.2024, 23:38
Помогаю со студенческими работами здесь

Угадать программу по иконке в трее
Доброго времени суток! От пользователя получили скриншот, в трее видна иконка (прилагается). Что это за программа, может кто знает? ...

Выбрать из текста только те символы, которые встречаются в нем только один раз
Здравствуйте, помогите пожалуйста написать программу:) Условие. Дана строка, содержащая текст на русском языке. Выбрать из него только те...

Выбрать из текста только те символы, которые встречаются в нем только два раза
1. Дана строка,содержащая текст на русском языке.Выбрать из него только те символы,которые встречаются в нем только два раза,в том порядке,...

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

Как вывести только в поле GridView только дату (без времени)?
Всем добрый день! У меня есть GridView: <asp:GridView ID="gvTable" runat="server" HeaderStyle-Font-Bold="true"...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru