importosfrom tkinter import *
import
time
os.chdir(
'e:\\actdata')
defmain():
def sendmsg():#
傳送訊息
strmsg = '
我:' + time.strftime("
%y-%m-%d %h:%m:%s",
time.localtime()) + '
\n '
(strmsg)
txtmsglist.insert(end, strmsg,
"greencolor
")#插入年月日
txtmsglist.insert(end, txtmsg.get('
0.0', end))#
輸入的內容,0.0表示文字開始
txtmsg.delete('
0.0', end)#
刪除中間剛輸入的內容
def cancelmsg():#
取消訊息
txtmsg.delete('
0.0'
, end)
def sendmsgevent(event): #
傳送訊息事件:
if event.keysym == "up"
: sendmsg()
#建立視窗
t =tk()
t.title(
'與python聊天中')
#建立frame容器
frmlt = frame(width=500, height=320, bg='
white')
frmlc = frame(width=500, height=150, bg='
white')
frmlb = frame(width=500, height=30)
frmrt = frame(width=200, height=500)
#建立控制項
txtmsglist =text(frmlt) #
txtmsglist.tag_config('greencolor', foreground='#008c00')#建立tag
txtmsg =text(frmlc);
txtmsg.bind(""
, sendmsgevent) #
傳送取消按鈕和
btnsend = button(frmlb, text='
發 送', width = 8, command=sendmsg)
btncancel = button(frmlb, text='
取消', width = 8, command=cancelmsg)
imginfo = photoimage(file = "
python2.gif")
lblimage = label(frmrt, image =imginfo)
lblimage.image =imginfo
#視窗布局columnspan選項可以指定控制項跨越多列顯示,
#而rowspan選項同樣可以指定控制項跨越多行顯示。
frmlt.grid(row=0, column=0,columnspan=2, padx=1, pady=3)
frmlc.grid(row=1, column=0, columnspan=2,padx=1, pady=3)
frmlb.grid(row=2, column=0,columnspan=2)
frmrt.grid(row=0, column=2, columnspan=2,rowspan=3, padx=2, pady=3) #
固定大小
frmlt.grid_propagate(0)
frmlc.grid_propagate(0)
frmlb.grid_propagate(0)
frmrt.grid_propagate(0)
#按鈕和 btnsend.grid(row=2,column=0)
btncancel.grid(row=2,column=1)
lblimage.grid()
txtmsglist.grid()
txtmsg.grid()
#主事件迴圈
t.mainloop() if
__name__ == '
__main__':
main()
編寫精美的聊天介面
一 執行效果圖 二 核心 mainactivity public class mainactivity extends activity private void initmsgs public class msgadapter extends arrayadapter override publi...
聊天介面實現
聊天介面是乙個listview,item是接受訊息介面和傳送訊息介面,list裡面的實體類有資訊內容和資訊型別 是傳送還是接收 adapter展示資料的時候,根據資訊型別隱藏或者顯示item的接受訊息介面或者傳送訊息介面。當傳送訊息的時候,list新增乙個實體類,adapter呼叫adapter.n...
簡單聊天介面
1.在main.storyboard中建立控制器和控制項,新增約束,設定textfield 如圖 2.為tableview在控制器上新增delegate datasource,為textfield新增delegate 3.在viewcontroller.m中新增 inte ce viewcontro...