Я написал скрипт на python, чтобы сделать громкость громче с помощью pactl. Я сделал файл .desktop
[Desktop Entry]
Type=Application
Terminal=false
Name=Super Volume
Icon=/home/tyler/SuperVolume/icon.ico
Exec=/home/tyler/SuperVolume/SuperVolume.py
Все было хорошо
, но потом я заметил, что это не добавление белой стрелки к моей иконке, а открытие общей иконки и положив стрелку на это
Так что, если кто-нибудь может сказать мне, как это изменить, я был бы очень признателен, я много гуглил, прежде чем спросить здесь, но, возможно, не ' Не используйте правильные ключевые слова, не уверен.
Окно в вашем изображении является окном Tkinter . Окна Tkinter по умолчанию не соответствуют значку средства запуска , если только вы специально не настроили средство запуска (файл .desktop
) в соответствии с WM_CLASS
окна. Далее объясняется, как это сделать.
однако
Если вы не определите конкретный WM_CLASS
в своем коде python
/ Tkinter
, все окна Tkinter
имеют то же самое WM_CLASS
. Вы можете видеть, что если вы запустите
xprop WM_CLASS
в терминале, нажмите Return kbd>, а затем щелкните в окне Tkinter
. Это покажет:
WM_CLASS(STRING) = "tk", "Tk"
Это означает, что если у вас есть несколько приложений Tkinter
, все они будут отображаться под одним значком в панели запуска. Это будет универсальный , если вы не отредактируете свой .desktop
файл.
Вы можете определить WM_CLASS
, установив его следующим образом:
#!/usr/bin/env python3
from tkinter import *
# set the WM_CLASS
win = Tk(className="applicationname")
# set the window title
win.wm_title("Test 123")
win.mainloop()
Добавьте следующую строку в ваш файл .desktop
:
StartupWMClass=applicationname
где applicationname
- имя Вы устанавливаете в коде python
/ Tkinter
.