mirror of
https://gitee.com/Zhaoxin59/my-chat_-client.git
synced 2026-02-14 00:51:48 +08:00
promote ui
This commit is contained in:
45
messageshowarea.h
Normal file
45
messageshowarea.h
Normal file
@ -0,0 +1,45 @@
|
||||
#ifndef MESSAGESHOWAREA_H
|
||||
#define MESSAGESHOWAREA_H
|
||||
|
||||
#include <QScrollArea>
|
||||
#include <QWidget>
|
||||
#include <QVBoxLayout>
|
||||
#include <QScrollBar>
|
||||
#include <QPushButton>
|
||||
#include <QLabel>
|
||||
|
||||
#include "model/data.h"
|
||||
|
||||
//.h文件中,不宜使用namespace xxx
|
||||
using model::Message;
|
||||
|
||||
////////////////////////////////////////////
|
||||
/// 表示消息展示区
|
||||
////////////////////////////////////////////
|
||||
class MessageShowArea : public QScrollArea
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
MessageShowArea();
|
||||
|
||||
private:
|
||||
QWidget* container;
|
||||
};
|
||||
|
||||
////////////////////////////////////////////
|
||||
/// 表示一个消息元素
|
||||
/// 我们可能考虑要同时支持文本,文件,图片,视频,语音
|
||||
////////////////////////////////////////////
|
||||
class MessageItem : public QWidget {
|
||||
public:
|
||||
//isLeft表示当前的这个消息是否是左侧的消息
|
||||
MessageItem(bool isLeft);
|
||||
|
||||
//通过工厂方法创建MessageItem实例
|
||||
static MessageItem* makeMessageItem(bool isLeft, const Message& message);
|
||||
|
||||
private:
|
||||
bool isLeft;
|
||||
};
|
||||
|
||||
#endif // MESSAGESHOWAREA_H
|
||||
Reference in New Issue
Block a user