首页 > 解决方案 > Tkinter 没有正确接收 IP 字符串

问题描述

Entry对 tkinter 的对象有疑问。基本上,我要做的是从用户那里接收一个 IP 字符串并首先检查它是否为空,然后检查它是否是一个有效的 IP 地址,然后尝试将客户端连接到服务器套接字。但是...似乎Entry只是不知道Entry' 何时为空或如何检查 ip 地址是否有效。

代码:

self.IPdst = StringVar()
txt_IP = Entry(Login_frame, bd=5, textvariable = self.IPdst,
               font = ('Arial', 14)).grid(row =1, column = 1, padx =20)

def is_ipv4(self):
    try:
        socket.inet_aton(self.IPdst)
        return True
    except socket.error:
        return False

def TryToConnectIP(self):
    if self.IPdst == '': #meaning empty
        messagebox.showerror('Error', 'filling field is required.')
    if self.is_ipv4() == True: #if ip address is valid computer will try to connect.
        pass
    else:
        messagebox.showerror('Error', 'Invalid IP address, please try again.')

标签: pythonsocketstkinterip

解决方案


推荐阅读