Вы хотите разместить виджет в строке 10, столбце 10 в сетке, но проблема здесь в том, что, так как предыдущие столбцы и строки в сетке пусты, они не занимают никакого пространства.
Чтобы добиться позиционирования, можно задать минимальный размер строк и столбцов, чтобы они занимали место, даже если они пустые, например:
from tkinter import *
from tkinter import ttk
main = Tk()
main.title("Deploy")
main.geometry("1250x900")
rows = 0
while rows < 50:
main.rowconfigure(rows, weight=1)
main.columnconfigure(rows, weight=1)
rows += 1
nb = ttk.Notebook(main)
nb.grid(row=1, column=0, columnspan=50, rowspan=49, sticky='NESW')
page1=ttk.Frame(nb)
nb.add(page1, text='Tab1')
page2=ttk.Frame(nb)
nb.add(page2, text='Tab2')
page3=ttk.Frame(nb)
nb.add(page3, text='Tab3', state="disabled")
page4=ttk.Frame(nb)
nb.add(page4, text='Tab4', state="disabled")
page5=ttk.Frame(nb)
nb.add(page5, text='tab5', state="disabled")
labelL1 = ttk.Label(page1, text="User name:")
# add this to give a min size to empty rows
rows = 0
while rows < 10:
page1.rowconfigure(rows,weight=1, minsize=1)
page1.columnconfigure(rows, weight=1, minsize=1)
#ttk.Label(page1, text="-").grid(row=rows, column=0)
rows += 1
labelL1.grid(row=10, column=10, sticky='WE', columnspan=3)
main.mainloop()
Но, возможно, другое решение будет более соответствовать grid
концепция, например, с использованием padx, padx
options
Аналогичный вопрос: Параметры интервала Tkinter.grid?