Я создаю gui приложение для GTK с python -тогой, и мне было интересно, можно ли создать toga.Button()
с иконкой. Я пытался использовать toga.Command()
для создания команды, в которой есть возможность добавить значок, но добавление команды в поле не работает.
Это часть моего кода, которая не работает :
search_box = toga.Box()
search_box.direction = 'row'
search_box.style.padding = 10
search_box.style.flex = 1
search_label = toga.Label('Search')
search_label.style.padding = (10, 10, 10, 0)
search_input = toga.TextInput(placeholder='Search')
search_input.style.flex = 1
search_input.style.color = "#FFFFFF"
search_command = toga.Command(action=self.test, label='Search') # self.test is a function that just prints user input taken from search_input
search_command.tooltip = 'Search For The Item'
search_command.icon = 'icons/search.png'
search_box.add(search_label)
search_box.add(search_input)
search_box.add(search_command) # This line errors out
При запуске приведенного выше кода появляется следующая ошибка:
root@host:~/c0balt# briefcase dev
[c0balt] Starting in dev mode...
[GTK+] Not implemented: Widget.set_hidden()
[GTK+] Not implemented: Widget.set_hidden()
[GTK+] Not implemented: Widget.set_hidden()
[GTK+] Not implemented: TextInput.set_font()
[GTK+] Not implemented: Widget.set_hidden()
[GTK+] Not implemented: TextInput.set_font()
[GTK+] Not implemented: TextInput.set_alignment()
[GTK+] Not implemented: TextInput.set_font()
[GTK+] Not implemented: TextInput.set_font()
[GTK+] Not implemented: TextInput.set_font()
Traceback (most recent call last):
File "/usr/local/lib/python3.7/dist-packages/toga_gtk/app.py", line 91, in gtk_startup
self.interface.startup()
File "/root/c0balt/src/c0balt/app.py", line 41, in startup
search_box.add(search_command)
File "/usr/local/lib/python3.7/dist-packages/toga/widgets/base.py", line 66, in add
super().add(child)
File "/usr/local/lib/python3.7/dist-packages/travertino/node.py", line 80, in add
set_root(child, self.root)
File "/usr/local/lib/python3.7/dist-packages/travertino/node.py", line 6, in set_root
for child in node.children:
AttributeError: 'Command' object has no attribute 'children'
Tl; dr
Как добавить кнопки в python -toga у которых есть значок вместо простого текста?