資源簡介
主要是通過wxpython來做一個類似與QQ群聊的一個程序,有在線好友列表功能。線程能安全退出。
代碼片段和文件信息
#!/usr/bin/env?python
#?-*-?coding:utf-8?-*-
import?wx
from?Chatframe?import?*
class?LogInDialog(wx.Dialog):
????“““docstring?for?LogInDialog“““
????def?__init__(self?parent?ID?title):
????????super(LogInDialog?self).__init__(
????????????parent?-1?title?wx.DefaultPosition?wx.Size(480?270))
????????self.Center()
????????panel?=?wx.Panel(self?-1)
????????#?添加兩個label
????????wx.StaticText(panel?-1?‘ServerIP:‘?pos=(140?80))
????????wx.StaticText(panel?-1?‘Name:‘?pos=(140?120))
????????#?輸入IP地址的文本框
????????self.serverIPText?=?wx.TextCtrl(
????????????panel?-1?‘192.168.1.101:3000‘?pos=(210?76)?size?=?(120?30))
????????#?輸入name的文本框
????????self.nameEdit?=?wx.TextCtrl(
????????????panel?-1?‘cyril‘?pos=(210?116)?size?=?(120?30))
????????#?確認按鈕
????????self.logInBtn?=?wx.Button(panel?wx.ID_OK?‘Log?In‘?pos=(280?220))
????????#?取消按鈕
????????self.cancleBtn?=?wx.Button(
????????????panel?wx.ID_CANCEL?‘Cancle‘?pos=(370?220))
class?ClientApp(wx.App):
????“““docstring?for?ClientApp“““
????#?wxpython 程序啟動會首先運行OnInit
????def?OnInit(self):
????????logInDlg?=?LogInDialog(None?-1?‘Log?in‘)
????????while?True:
????????????#?登錄窗口顯示
????????????result?=?logInDlg.ShowModal()
????????????#?按下登錄按鈕
????????????if?result?==?wx.ID_OK:
????????????????#?聊天主界面
????????????????self.frame?=?Mainframe(None?-1?logInDlg.nameEdit.Value)
????????????????#?判斷是否與服務器連接成功,如果成功就顯示主界面
????????????????if?self.frame.connect(logInDlg.serverIPText.Value):
????????????????????self.SetTopWindow(self.frame)
????????????????????self.frame.Show()
????????????????????break
????????????#?退出程序
????????????if?result?==?wx.ID_CANCEL:
????????????????break
????????#?銷毀對話框
????????logInDlg.Destroy()
????????return?True
if?__name__?==?‘__main__‘:
????#?wxPython的框架
????app?=?ClientApp(0)
????app.MainLoop()
- 上一篇:淘寶秒殺python腳本
- 下一篇:Python 中文手冊.chm
評論
共有 條評論