Итак, я использую библиотеку, которую больше никого не могу найти, используя tkintertoy. По-видимому, это была сделанная версия для начинающих, удобная для начинающих. Я пытаюсь выбрать mp3-файл с открытым виджетом и добавить его в виджет сборщика. Проблема в том, что я также хочу добавить кнопку для воспроизведения выбранного файла, и я не могу понять, как определить, какая песня выбрана в данный момент.
app = Gui()
app.gui.waitforUser()
if app.gui.content:
file = app.gui.get('input')
data = app.gui.get('libraryOne', allValues=True)
app.gui.playMusic()
app.gui.cancel()
Это часть кода, которая запускает приложение. Я попытался дать ему приложение. gui .playMusi c () в качестве теста. В настоящее время функция playMusi c () жестко запрограммирована для воспроизведения выбранной мною песни, но исполнение почему-то никогда не достигает этой части кода. То, что я хочу сделать, это взять файл из виджета 'input' и каким-то образом передать его кнопке Play, которую я уже создал.
button = [('Play', self.playMusic)]
mp3Tab.addButton('commands', cmd=button)
У меня есть этот код ранее, чтобы определить, что происходит с кнопкой воспроизведения. Параметру cmd в addButton присваивается переменная «кнопка», которая содержит текст, отображаемый в кнопке, а также функцию, выполняемую при нажатии кнопки. Проблема в том, что я могу дать ему только имя функции. Если бы я должен был войти в функцию следующим образом:
button = [('Play', self.playMusic())]
mp3Tab.addButton('commands', cmd=button)
(обратите внимание на квадратные скобки после playMusi c здесь), тогда программа просто начнет воспроизводить жестко закодированную песню, как только она достигнет этой точки в коде. во время настройки. Не когда кнопка нажата.
Короче, вот два моих вопроса.
- Как работает первый блок кода? Это не похоже на приложение. gui .content работает вообще, хотя я видел это в каждом примере, на который смотрел
- Как передать файл в playMusi c, когда он был выбран, если я не могу дать ему параметры в разделе команд?
Я знаю, что это много, особенно потому, что я использую незнакомую библиотеку. Но я был бы признателен за любой вклад или обратную связь. Если бы кто-то мог указать мне на некоторые полезные материалы для чтения или видео, я бы тоже это оценил. Кроме того, если вам нужно больше уточняющих вопросов, или если вы хотите, чтобы я написал больше кода, не стесняйтесь спрашивать.