Я создал шаблон приложений человечности по умолчанию, использующий быстро, и я пытаюсь разработать, как изменить отображенное изображение через код.
Изображение по умолчанию показывает логотип человечности с путем ".../media/background.png" в поляне.
Если я открываю файл Python окна проектов (testWindow.py, поскольку название проектов является тестом), и добавьте следующие строки в основе функции finish_initializing (изменение ничего иного в созданных файлах по умолчанию),
self.PNG = self.builder.get_object("image1")
self.PNG.set_from_file("../media/background.png")
Прогоны программы, но вместо логотипа человечности, маленьких дисплеев значка отсутствующего файла. Однако никакие дисплеи сообщения об ошибке в терминале и изменении png файла к другому png или перемещения его к тому же каталогу как файл Python (изменяющий второй файл строк на "background.png") не дают ту же проблему. Я могу использовать ясное () функция для удаления изображения успешно, но я ясно делаю что-то не так, и я, может казаться, не превращаю прогресса в документацию для виджета изображения.
В случае, если это помогает знать то, что я стремлюсь делать, я пытаюсь создать простую программу карты флэш-памяти, отображая японский символ и требуя, чтобы пользователь ввел корректное произношение и отобразив другое изображение нового символа, если пользователь успешен.
Спасибо за любую справку можно дать!
Указанный вами путь set_from_file
относится к файлу glade, но не к файлу python. В любом случае лучше использовать полные пути, так как использование относительных путей часто приводит к проблемам при запуске установленного приложения. Быстро предоставляет полезную вспомогательную функцию, чтобы дать вам полный путь к файлу, найденному в папке data/
. Попробуйте:
from test_lib.testconfig import get_data_file
[....]
self.image = self.builder.get_object("image1")
self.background = get_data_file("media/background.png")
self.image.set_from_file(self.background)