weixin_44220352 2020-04-20 14:01 采纳率: 0%
浏览 325

如何解决ArcGIS中python插件调用Tkinter创建窗口崩溃的问题?

本人毕设使用python使用用addin-assistant制作Arcmap插件,然而在插件调用matplotlib输出散点图时却导致Arcmap崩溃,如下图:图片说明

而后我发现只要插件调用Tkinter创建新窗口就会崩溃,输出散点图和创建新窗口异常信息都如下图:图片说明

以下是最基本的插件内容,只要点击按钮运行必崩溃:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import arcpy
import pythonaddins
import Tkinter as tk

class AB:
    test=''

class ButtonClass2(object):
    """Implementation for test_addin.button (Button)"""
    def __init__(self):
        self.enabled = True
        self.checked = False
    def onClick(self):
        top = tk.Tk()
        l=tk.Label(top, text=AB.test, bg='green', font=('Arial', 12), width=30, height=2)
        top.mainloop()
        pass

class ComboBoxClass1(object):
    """Implementation for test_addin.combobox (ComboBox)"""
    def __init__(self):
        self.items = ["item1", "item2"]
        self.editable = True
        self.enabled = True
        self.dropdownWidth = 'WWWWWW'
        self.width = 'WWWWWW'
    def onSelChange(self, selection):
        pass
    def onEditChange(self, text):
        AB.test=text
        pass
    def onFocus(self, focused):
        pass
    def onEnter(self):
        pass
    def refresh(self):
        pass

在Arcmap里的python窗口一步一步输入代码运行创建窗口基本不会有问题,但偶尔还是会有崩溃的可能。

本人能力较差,很多基本知识还不懂,现在只是想完成毕业设计,创建窗口和散点图又是必须要的,不知道在插件里生成图和窗口是否合理,希望能够有人给出解决方案。

  • 写回答

1条回答 默认 最新

  • weixin_42670381 2021-10-11 23:34
    关注

    我也遇到ARCMAP调用自定义加载项按钮,调用Tkinter窗口就奔溃,之前测试的时候不会的,不知道怎么的,现在就是会这样。有解决办法麻烦告知下谢谢,896719798@qq.com

    评论

报告相同问题?

悬赏问题

  • ¥15 Stata 面板数据模型选择
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用