
python 练习
多人聊天室

安装模块:pip install wxpython
# coding:utf-8
import wx
class Socket(wx.Frame):
def __init__(self,client_name):
# None:没有父级窗口 id-窗口编号 pos-窗体打开的位置 size-窗口大小
wx.Frame.__init__(self,None,id=1001,title=client_name+'客户端',pos=wx.DefaultPosition,size=(400,450))
pl=wx.Panel(self)
box=wx.BoxSizer(wx.VERTICAL) # 垂直方向布局
# 可以伸缩的网格布局
fgz1=wx.FlexGridSizer(wx.HSCROLL)# 水平方向布局
# 创建按钮
con_btn=wx.Button(pl,size=(200,40),label='连接')
dis_btn=wx.Button(pl,size=(200,40),label='断开')
#将按钮放到网格上
fgz1.Add(con_btn,1,wx.TOP|wx.LEFT)
fgz1.Add(dis_btn,1,wx.TOP | wx.RIGHT)
box.Add(fgz1, 1, wx.ALIGN_CENTRE)
#聊天显示区域
self.show_text=wx.TextCtrl(pl,size=(400,210),style=wx.TE_MULTILINE|wx.TE_READONLY)
box.Add(self.show_text,1,wx.ALIGN_CENTRE)
#聊天输入区
self.chat_text=wx.TextCtrl(pl,size=(400,210),style=wx.TE_MULTILINE|wx.TE_READONLY)
box.Add(self.chat_text,1,wx.ALIGN_CENTRE)
# 可以伸缩的网格布局
fgz2=wx.FlexGridSizer(wx.HSCROLL)# 水平方向布局
# 创建按钮
reset_btn=wx.Button(pl,size=(200,40),label='重置')
send_btn=wx.Button(pl,size=(200,40),label='发送')
#将按钮放到网格上
fgz2.Add(reset_btn,1,wx.BOTTOM|wx.LEFT)
fgz2.Add(send_btn,1,wx.BOTTOM|wx.RIGHT)
box.Add(fgz2, 1, wx.ALIGN_CENTRE)
pl.SetSizer(box)
if __name__ == '__main__':
# 初始化
app=wx.App()
client=Socket('乐趣')
client.Show()
app.MainLoop()