报错
RuntimeError: cannot call null pointer pointer from cdata 'int(*)(void *, int)'
"""
My first application
"""
import toga
from toga.style import Pack
from toga.style.pack import COLUMN, ROW
import httpx
import socket
import threading
import json
IP = '8c3i911557.zicp.fun'
PORT = '30479'
user = ''
listbox1 = '' # 用于显示在线用户的列表框
show = 1 # 用于判断是开还是关闭列表框
users = [] # 在线用户列表
chat = '------Group chat-------' # 聊天对象
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((IP, int(PORT)))
if user:
s.send(user.encode()) # 发送用户名
else:
s.send('用户名不存在,'.encode())
user = '手机用户'
class chat(toga.App):
def startup(self):
name = self.name_input.value
main_box = toga.Box(style=Pack(direction=COLUMN))
name_label = toga.Label(
"输入:",
style=Pack(padding=(0, 5))
)
self.name_input = toga.TextInput(style=Pack(flex=1))
name_box = toga.Box(style=Pack(direction=ROW, padding=5))
name_box.add(name_label)
name_box.add(self.name_input)
button = toga.Button(
"发送",
on_press=self.say_hello,
style=Pack(padding=5)
)
main_box.add(name_box)
main_box.add(button)
self.main_window = toga.MainWindow(title=self.formal_name)
self.main_window.content = main_box
self.main_window.show()
def say_hello(self, widget):
print(f"Hello, "+str(name))
def send(*args):
message = str(name) + '~' + user + '~' + chat
s.send(message.encode())
INPUT.set('')
def main():
return chat()