Ошибка просмотра карты Tkinter: объект «PhotoImage» не имеет атрибута «_PhotoImage__photo»Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка просмотра карты Tkinter: объект «PhotoImage» не имеет атрибута «_PhotoImage__photo»

Сообщение Anonymous »

Я пытаюсь нарисовать вид карты внутри рамки и нарисовать многоугольники местных органов власти (чтобы пользователь мог щелкнуть, чтобы выбрать).
При запуске кода я получаю следующее ошибка, хотя виджет работает:

Код: Выделить всё

AttributeError: 'PhotoImage' object has no attribute '_PhotoImage__photo'
Я использую следующий код:

Код: Выделить всё

import tkinter as tk
import tkintermapview
import json
import itertools

# create tkinter window
root_tk = tk.Tk()
root_tk.geometry(f"{1000}x{700}")
root_tk.title("map_view_polygon_example.py")

# create map widget
map_widget = tkintermapview.TkinterMapView(root_tk, width=800, height=600, corner_radius=0)
map_widget.pack(fill="both", expand=True)
map_widget.set_position(53.46,-2.250)  # UK
map_widget.set_zoom(8)

# polygon click
def UpdateMap(event=None):
tk.messagebox.showinfo("A local authority")

# get polygon shape
d = open('LA_shape.json')
shape = json.load(d)
shape = shape['features']

# for each local authority
for x in range(len(shape)):
coord = shape[x]
coord = coord['geometry']
coord = coord['coordinates']
coord = list(itertools.chain(*coord))
coord = list(itertools.chain(*coord))

# swap lat / long to long / lat
for x in range(len(coord)):
coord[x][0], coord[x][-1] = coord[x][-1], coord[x][0]

map_widget.set_polygon(coord,
# fill_color=None,
# outline_color="red",
# border_width=12,
command=UpdateMap,
name="local_authority_polygon")

root_tk.mainloop()
Исходный файл LA_shape.json здесь

Подробнее здесь: https://stackoverflow.com/questions/758 ... mage-photo
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»