Скроллеры (Scrollbar). Получение данных из списков (Listbox) на Python

Скрипт выводит в окно два списка со скроллерами, кнопку и холст.

В списках выбираются координаты. При щелчке на кнопке на холсте рисуется точка в выбранной позиции.

Проблема. После выбора элемента во одном списке, в другом снимается выделение. Пользователь не видит пары координат, а только последнюю координату.

from tkinter import *
window = Tk()
 
def func_point(event):
    x = int(lstbox.get(ACTIVE))
    y = int(lstbox2.get(ACTIVE))
    a = 2
    cnv.create_rectangle(x-a,y-a,x+a,y+a,fill="black")
 
lstbox = Listbox(window,height=10,width=10)
scr = Scrollbar(window,command=lstbox.yview)
lstbox.configure(yscrollcommand=scr.set)
lstbox.grid(row=0,column=0,sticky=E)
scr.grid(row=0,column=1,sticky=NS)
 
lstbox2 = Listbox(window,height=10,width=10,takefocus=TRUE)
scr2 = Scrollbar(window,command=lstbox2.yview)
lstbox2.configure(yscrollcommand=scr2.set)
lstbox2.grid(row=0,column=2,sticky=E)
scr2.grid(row=0,column=3,sticky=NS)
 
for i in range(20,400,20):
    lstbox.insert(END,str(i))
    lstbox2.insert(END,str(i))
 
cnv = Canvas(window,width=400,height=400,bg="white")
cnv.grid(row=1,column=0,columnspan=20)
 
but = Button(window,text="Show point")
but.grid(row=0,column=4,columnspan=10)
but.bind("<Button-1>",func_point)
 
window.mainloop()

  Аргумент + в классе Python: эффективная организация кода
Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Python для начинающих
Подписаться
Уведомить о
guest
0 Комментарий
Межтекстовые Отзывы
Посмотреть все комментарии
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x