Я вроде как новичок в Python, я изучаю его сам, и все, что я должен сказать, это то, что это замечательный язык программирования. Даже если я изучаю это прямо, сейчас я знаю (как новичок), как работать с GTK, потоками, urllib и другими модулями.
Но мне нужен ответ от опытных пользователей PyGTK. Посмотрите на этот маленький пример на картинке:
http://i.stack.imgur.com/y10nv.png
В этом концептуальном приложении (у него нет рабочего кода), когда пользователь выберет строку из Gtk.TreeView, я покажу некоторые специфические для строки данные, взятые из Интернета (URL отличаются для каждой строки). Поэтому, когда пользователь нажимает на строку, запускается поток (чтобы не заморозить графический интерфейс), получающий данные из URL. Когда данные были успешно извлечены, вызывается обратный вызов, отображающий содержимое в метке Gtk.Label, размещенной под списком.
Проблема в том, что если пользователь быстро выберет несколько разных строк, ну ... будет небольшой беспорядок, потому что некоторые запросы могут занять больше времени, чем другие, и произойдет «десинхронизация» между выбранной строкой и средством отображения данных. в Gtk.Label. Я знаю, что работающий поток не может быть остановлен извне (даже если я нашел модуль потока, который делает это возможным), так как лучше всего предотвратить десинхронизацию Gtk.Label с текущим выбором?
Я прошу прощения за мой плохой английский и за мой глупый вопрос. В настоящее время мне удалось это исправить, сравнив текст в выбранной строке с тем, что я ожидаю получить от запрошенного URL, но я думаю, что есть лучший способ справиться с этим.
Большое спасибо,
Овидиу Нитан