Подтвердить что ты не робот

Создание Tk выглядит как родное приложение для Linux

Просмотр TkDocs, похоже, что Tk прошел долгий путь в отделе "родной внешний вид". Но, смотря на некоторые из эти скриншоты, похоже, он поддается Linux. Если вы прокрутите страницу вниз, вы увидите скриншот Mac, который будет выглядеть точно так же, как Mac, скриншот Windows XP, который выглядит точно так же, как Windows XP, и снимок экрана Linux, который выглядит... хорошо Windows 98 (или Windows XP с классическим стиль).

Я знаю, что у Linux действительно нет "родного внешнего вида", так как каждый инструментарий делает свой собственный стиль. Но мне интересно, есть ли способ стиля Tk, поэтому он выглядит как GTK или Qt (желательно Gtk), поэтому он будет вписываться в большинство других приложений на рабочем столе Linux.

Как насчет Windows Vista/7? Я не видел скриншотов Tk на этих платформах.

4b9b3361

Ответ 1

Tk имеет в основном два набора виджетов, классические виджеты и тематические виджеты. Классические виджеты по умолчанию из-за необходимости поддерживать старые приложения, но новый код должен использовать тематические виджеты. (Они не могут быть перегружены, потому что они работают совсем по-другому, и там много кода, который зависит от старого классического способа. Увы.) С правильной темой видят тематические виджеты (обычно называемые Ttk) native и вести себя в основном на Windows и OSX.

Есть частичные темы Ttk, которые передают Gtk и Qt (эта презентация из прошлого года показывает их в действии), но они частично, в значительной степени из-за низкого качества тем (темы Gtk/Qt, а не темы Ttk, это запутывает!) в типичном использовании с этими инструментами. Основная проблема, по-видимому, заключается в представлении показателей, которые часто кажутся неправильными (в результате чего виджеты получают неправильный размер или визуальные элементы, помещенные в неправильное место); Насколько я понимаю из беседы с автором этой статьи, значительная часть тем работает только с Gtk/Qt, но не может проверить это из личного опыта. (Я на OSX, поэтому я использую прямую поддержку Ttk.)

Ответ 2

PySolFC включает приятный, современный внешний вид, который также можно использовать с другими приложениями Tk.
Стефан Соколов пишет об этом в своем blog:

Ответ 3

Для нетерпеливых пользователей современного дистрибутива Linux:

echo '*TkTheme: clam' >> ~/.Xresources
xrdb -merge ~/.Xresources

Затем перезапустите приложение на основе Tk.

Вот что ожидать (показано git gui):

прикладная тема tk

Слева находится git gui после выполнения указанной выше команды. Обратите внимание, что панель изменилась, кнопки тоже сделали.

Ответ 4

Как раз из того, что я слышал в основном списке рассылки Python время от времени, виджеты Themed TK (TTK) доступны и могут либо имитировать собственные виджеты, либо делать свою собственную вещь и хорошо выглядеть. См. http://www.tkdocs.com/tutorial/styles.html.

Из опыта, Tk (по крайней мере, через Python) выглядит как дерьмо. Я остановил тест для вас на окнах 7: http://sadpanda.us/images/542945-LNUGO0F.jpg. По умолчанию это не выглядит!