python макет tkinter - создание двух текстовых виджетов с помощью полосы прокрутки в полноэкранном окне и нескольких других дополнительных виджетов - PullRequest
0 голосов
/ 19 марта 2020

Я хочу создать программу, которая открывается в полноэкранном режиме и в которой левая сторона окна программы представляет собой текстовый виджет с полосой прокрутки справа, так что ее ширина составляет 60% от ширины экрана, а справа сторона также является текстовым виджетом с полосой прокрутки, и его ширина составляет 40% ширины экрана, вот что я пытался сделать безуспешно, как вы можете видеть, запустив этот код (синий и зеленый цвета просто для удобства ):

import tkinter as tk
from tkinter.scrolledtext import *
master = tk.Tk()
w = master.winfo_screenwidth()
h = master.winfo_screenheight()
master.geometry("{}x{}".format(w,h))
main = ScrolledText(master, bg="blue", width=int(0.6*w), height=h)
sec = ScrolledText(master, bg="green", width=int(0.4*w), height=h)
main.frame.place(x=0, y=0)
sec.frame.place(x=int(0.6*w), y=0)

Итак, прежде всего, если бы вы могли помочь мне правильно реализовать эту часть, это было бы очень полезно, а затем есть 3 дополнительных виджета, которые я хотел бы добавить к этому:

  1. Верхняя строка меню.
  2. Виджет Text в нижней части окна с шириной всего экрана и высотой одной текстовой строки в спецификациях шрифтов этого текстового виджета (это будет своего рода строка состояния).
  3. номера строк слева от текстового виджета слева (основной). Здесь есть пост о том, как его создать здесь , но я не уверен, как его добавить.

1 Ответ

0 голосов
/ 19 марта 2020
  1. Менубар
# Menu bar
menubar = Menu(app)
app.config(menu=menubar)

menu = Menu(menubar, tearoff=0)
menubar.add_cascade(label="Menu", menu=menu)

menu.add_command(label="menu", command=command)

Подробнее здесь

Ширина всего экрана
Можно использовать .pack(side="bottom", fill="both")
...