Qt的聊天氣泡

2021-10-19 11:19:19 字數 4039 閱讀 1153

採用了qlistwidget作為聊天記錄視窗,而每一子項都為qwidget,可以在qwidget繪製自己新增的內容,比如訊息內容、頭像、名字等,主要可以顯示動態gif表情。

效果圖:

//右邊的影象和內容顯示

elseif(

this

->show_type==show_type_time)

//時間顯示

}void chatcontentcircular::

calc_text_size()

text_max_width=

this

->

width()

-min_width;

//框架的最大文字寬度

qint32 real_width=metrics.

width

(this

->user_chat_content);if

(real_width

else

window_height=text_height_spacing+text_height+text_height_spacing>icon_height? text_height_spacing+text_height+text_height_spacing: icon_height;

window_height=begin_height_spacing+window_height+begin_height_spacing;

}userchatcontentinte***ce.h`

#include

#include

#include

#include

typedef

enum

show_type_enum;

class

userchatcontentinte***ce

:public qwidget

virtual qstring getname()

=0;//外掛程式型別名稱

virtual qint32 getverison()

=0;//外掛程式版本號

virtual qint32 getwindowheight()

=0;//返回視窗的實際合適高度

virtual qstring getusericonname()

=0;//返回使用者的影象名稱

virtual qstring getuserchatcontent()

=0;//返回使用者聊天內容

virtual qdatetime gettalktime()

=0;//返回聊天時間

virtual

void

setusericonname

(qstring namestr)=0

;//設定使用者的影象名稱

virtual

void

setuserchatcontent

(qstring usertext)=0

;//設定使用者聊天內容

virtual

void

settalktime

(qdatetime talktime)=0

;//設定聊天時間

virtual

void

run(show_type_enum type)=0

;//開始執行,需要繪製,即開始繪製

};

css實現聊天氣泡效果

css功能強大,能實現很多炫 酷的效果,今天給大家分享 用css3繪製聊天氣泡的方法 在繪製氣泡之前,先實現箭 頭的繪製,如下 效果如上圖所示 從上面的圖可以發現,在未設 置寬高的情況下,上下左右的 邊框都是乙個三角形,如果只 留下某乙個方向上的border,就可以實現三角箭頭的效果 實現css 和...

Android 仿微信聊天氣泡

第一次寫部落格,遇見了這樣的需求,當時看見那個角就有點觸了,想到了自定義去實現但是思路不是很明確,跟老大請教了下,給了我思路就開始上手,但是還是出不來想要的效果,最後功夫不負有心人啊,上效果圖吧,這是乙個自定義組合空間,可以往裡面放任何控制項,自定義 效果 public class chatitem...

CSS 如何實現微信聊天氣泡

先來分析一下聊天氣泡 氣泡分割為兩部分,左邊的矩形,右邊的三角形 矩形的實現比較簡單 先對對右邊的三角形進行分析 如果把width,height置為0,效果則如下圖 只需要三角形,所以把border的其中一邊設定為你需要的顏色,其他三個border顏色則設定為與背景顏色相同,就得到了我們想要的三角形...