Блокнот для ноутбуков в Ткинтере

Попробуйте эту штуку, я не думаю, что кто-то предложил это в теме, это решит, как 70% вашей проблемы, для некоторых других страниц вам придется отказаться, у меня есть полное решение, но не для публики,

ДОБАВИТЬ ниже в ваш iframe

песочница = разрешить разрешающие скрипты разрешать-всплывающие окна разрешать-формы "

16
задан nbro 19 May 2015 в 01:49
поделиться

4 ответа

На недавнем Python (> 2.7) версии, можно использовать ttk модуль, который обеспечивает доступ к Tk тематический виджет набор, который был представлен в Tk 8.5.

Вот то, как Вы импортируете ttk в Python 2:

import ttk

help(ttk.Notebook)

В Python 3, ttk модуль идет со стандартными дистрибутивами как с подмодулем [1 118] tkinter .

Вот простой рабочий пример на основе примера от TkDocs веб-сайт:

from tkinter import ttk
import tkinter as tk
from tkinter.scrolledtext import ScrolledText


def demo():
    root = tk.Tk()
    root.title("ttk.Notebook")

    nb = ttk.Notebook(root)

    # adding Frames as pages for the ttk.Notebook 
    # first page, which would get widgets gridded into it
    page1 = ttk.Frame(nb)

    # second page
    page2 = ttk.Frame(nb)
    text = ScrolledText(page2)
    text.pack(expand=1, fill="both")

    nb.add(page1, text='One')
    nb.add(page2, text='Two')

    nb.pack(expand=1, fill="both")

    root.mainloop()

if __name__ == "__main__":
    demo()

Другая альтернатива должна использовать NoteBook виджет от tkinter.tix библиотека. Для использования tkinter.tix необходимо было установить эти Tix виджеты, обычно вместе с установкой эти Tk виджеты. Для тестирования установки попробуйте следующее:

from tkinter import tix
root = tix.Tk()
root.tk.eval('package require Tix')

Для большего количества информации, проверьте этот веб-страница на веб-сайте PSF.

Примечание, которое tix довольно старо и не хорошо поддерживаемое, таким образом, Ваш лучший выбор мог бы состоять в том, чтобы пойти для [1 115].

20
ответ дан nbro 19 May 2015 в 01:49
поделиться

В то время как это не может помочь Вам в данный момент, tk 8.5 идет с расширенным набором виджетов. Этот расширенный набор доступен с tk 8.4 посредством расширения, известного как "мозаика". Включенный в расширенный набор виджетов виджет ноутбука. К сожалению, в это время Tkinter значением по умолчанию использует довольно старую версию Tk, который не идет с этими виджетами.

были усилия сделать мозаику доступной для Tkinter. Выезд http://tkinter.unpythonic.net/wiki/TileWrapper . Поскольку другое подобное усилие видит http://pypi.python.org/pypi/pyttk . Кроме того, для вкуса того, как эти виджеты смотрят (в Ruby, Perl и Tcl) см. http://www.tkdocs.com/ .

Tk 8.5 огромен улучшение по сравнению с запасом Tk. Это представляет несколько новых виджетов, собственных виджетов и theming механизм. Надо надеяться, это будет доступно по умолчанию в Tkinter однажды скоро. Слишком плохо мир Python отстает от других языков.

обновление: последние версии Python теперь включают поддержку тематических виджетов из поля. _

3
ответ дан Bryan Oakley 19 May 2015 в 01:49
поделиться

"Или это просто имеет место, что кто-либо, кому нужны более мощные компоненты работы с окнами, должен использовать wxPython?"
Короткий ответ: да.

ответ Long: может потребоваться некоторая практика для Вашего кода wxPython для чувства "чистым", но это более хорошо и намного более мощно, чем Tkinter. Вы также получите лучшую поддержку, так как больше людей использует ее в эти дни.

0
ответ дан sep332 19 May 2015 в 01:49
поделиться

Какие проблемы Вы имели с pmw? Это старо, да, но это - чистый Python, таким образом, это должно работать.

Примечание, что Tix не работает с py2exe, если это - проблема для Вас.

0
ответ дан John Fouhy 19 May 2015 в 11:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: