Qt实现简易QQ聊天界面

本文实例为大家分享了Qt实现简易QQ聊天界面的具体代码,供大家参考,具体内容如下

代码

myDialog.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QWidget>
#include <QToolButton>
#include <QVBoxLayout>
#include <QHBoxLayout>
#include <QList>

class MyDialog : public QWidget
{
    Q_OBJECT

public:
    MyDialog(QWidget *parent = nullptr);
    ~MyDialog();

private:

    QToolButton *textButton;
    QVBoxLayout *vLayout;
    QHBoxLayout *hLayout;
    QToolButton *userButton[9];
    QList<QString> nameList;
    QList<QString> picList;
};
#endif // MAINWINDOW_H

myDialog.cpp

#include "myDialog.h"
#include <QPixmap>
#include <QIcon>
#include <QVector>

MyDialog::MyDialog(QWidget *parent)
    : QWidget(parent)
{
    this->setGeometry(200, 400, 250, 700);
    this->setWindowTitle("MyQQ 2020");
    textButton = new QToolButton();
    textButton->setText("群成员");
    textButton->setSizePolicy(QSizePolicy::Preferred,QSizePolicy::Preferred);
    vLayout = new QVBoxLayout(this);
    vLayout->addWidget(textButton);
    vLayout->setContentsMargins(0, 0, 0, 680);

    nameList << "nil" << "yingge" << "旧日暮里"
             << "戏班保洁" << "环球要饭集团"<< "财务"
             << "﹏沐.唐ゞ" << "萌新2号" << "森の妖精";

    picList << ":/img/1.jpg" << ":/img/2.jpg" << ":/img/3.jpg"
            << ":/img/4.jpg" << ":/img/5.jpg" << ":/img/6.jpg"
            << ":/img/7.jpg" << ":/img/8.jpg" << ":/img/9.jpg";

     QVector<QToolButton *> vToolButton;
    for(int i=0; i<9; i++)
    {
        userButton[i] = new QToolButton();

        userButton[i]->setToolButtonStyle(Qt::ToolButtonTextBesideIcon);
        userButton[i]->setText(nameList[i]);
        userButton[i]->setAutoRaise(true);
        userButton[i]->setIcon(QPixmap(picList[i]));
        userButton[i]->setIconSize(QSize(50, 50));
        vToolButton.push_back(userButton[i]);
        vLayout->addWidget(userButton[i]);
    }

}

MyDialog::~MyDialog()
{
}

效果图

总结

与实际的qq界面相比还有很多需要完善的地方,同时具体的功能还没有是实现,后期会进行补充。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 使用qt quick-ListView仿微信好友列表和聊天列表的示例代码

    1.视图模型介绍 在Qml中.常见的View视图有: ListView: 列表视图,视图中数据来自ListModel.XmlListModel或c++中继承自QAbstractItemModel或QAbstractListModel的自定义模型类 TableView: 和excel类似的视图 GridView: 网格视图,类似于home菜单那样,排列着一个个app小图标 PathView: 路径视图,可以根据用户自定义的path路径来显示不一样的视图效果 SwipeView: 滑动视图,使用一组

  • Qt实现网络聊天室的示例代码

    目录 1. 效果演示 2. 预备知识 2.1 QTcpServer 2.2 QTcpServer信号 2.3 QTcpSocket 2.4 QTcpSocket信号 3. 通信流程 3.1 服务器端 3.2 客户端 1. 效果演示 客户端 服务器 连接成功之后 2. 预备知识 在Qt中,实现网络编程的方式比用C++或C实现要方便简单许多,因为Qt已经替我们封装好了,我们会使用就可以了,然后大家还需要了解Qt 的信号槽机制,可以参考我这篇文章,Qt信号槽 2.1 QTcpServer QTcpSe

  • Qt实现简易QQ聊天界面

    本文实例为大家分享了Qt实现简易QQ聊天界面的具体代码,供大家参考,具体内容如下 代码 myDialog.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include <QWidget> #include <QToolButton> #include <QVBoxLayout> #include <QHBoxLayout> #include <QList> class MyDialog : public

  • JavaScript实现简易QQ聊天界面

    本文实例为大家分享了JavaScript实现简易QQ聊天界面的具体代码,供大家参考,具体内容如下 题目: 制作一个简易聊天界面,当用户在界面下方的文本框中输入信息后,点击发送按钮,文本框中的信息发送到界面中部的信息显示区域,同时信息输入文本框中的信息被清空,等待下次信息录入.信息从上往下一条条显示. 操作界面如下图所示: 题目分析: 1.用户输入信息,需要文本框text:2.确定输入的信息后,点击发送按钮,即button按钮:3.文本框的信息将显示在信息显示区域textarea,或者div,本文

  • java代码块之简易qq登录界面及按钮颜色设置代码

    本文主要分享了关于简洁版qq登录界面及按钮颜色设置的相关代码,供参考. java代码块 公共包(初始化窗口位置) package util; import java.awt.Dimension; import java.awt.Toolkit; import javax.swing.JFrame; //图形化界面的工具类 public class FrameUtil { //设置窗体出现在中间位置 public static void initFrame(JFrame frame,int wid

  • electron制作仿制qq聊天界面的示例代码

    本文介绍了electron制作仿制qq聊天界面的示例代码,分享给大家,具体如下: 效果图: 样式使用scss和flex布局 这也是制作IM系统的最后一个界面了! 在制作之前参考了qq和千牛 需要注意的点 qq将滚动条美化了 而且在无操作的情况下是不会显示的 滚动条美化 ::-webkit-scrollbar { /*滚动条整体样式*/ width: 5px; /*高宽分别对应横竖滚动条的尺寸*/ height: 1px; } ::-webkit-scrollbar-thumb { /*滚动条里面

  • C语言仿QQ聊天界面抖动功能

    本文实例为大家分享了C语言 QQ聊天界面抖动的具体代码,供大家参考,具体内容如下 图片中的窗口抖动功能大家应该都用过,今天给大家带来的就是用C来实现类似QQ窗口抖动的小练习,其实窗口的抖动的原理就是让它在不同的几个位置停顿一小下然后再来回移动,我们先来看代码,稍后再进行解释. #include <stdio.h> #include<Windows.h> int main(void) { int time = 60; //休眠的时间,为60毫秒 int distance = 10;

  • jQuery实现简易QQ聊天框

    本文实例为大家分享了jQuery实现简易QQ聊天框的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>例子1</title> <style type="text/css"> *{list-style: none;margin: 0;padd

  • Android小程序实现简易QQ界面

    本文实例为大家分享了Android实现简易QQ界面的具体代码,供大家参考,具体内容如下 要求: (1)与QQ界面控件数目.样式相同 (2)与QQ的图形化界面相同 (3)实现一个简单的点击事件 具体实现: (1)编写程序代码 package com.example.login; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.view.Menu; impor

  • Swift 3.1聊天界面键盘效果的实现详解

    前言 最近写的 Swift 项目里要实现一个聊天界面,在处理键盘弹出的时候遇到了一点麻烦. 麻烦就在于键盘弹出后如何处理屏幕和键盘的关系 经过一番死磕,终于做出了想要的效果,效果如下: 注:原本项目是 Swift 2.3 写的,为了写这篇博客,用 Swift 3.1 重新实现了一遍. 感受:方法名真的缩短了不少,

  • 基于Java Socket实现一个简易在线聊天功能(一)

    最近做了一个项目,其中有一个在线网页交流的需求,好久没写代码了,手都生疏了,于是先写demo练练手,分享到我们平台,以此做个记录,方便自己和大家使用. 先给大家说下实现步骤分这样几大步: 1.使用awt组件和socket实现简单的单客户端向服务端持续发送消息: 2.结合线程,实现多客户端连接服务端发送消息: 3.实现服务端转发客户端消息至所有客户端,同时在客户端显示: 4.把awt组件生成的窗口界面改成前端jsp或者html展示的界面,java socket实现的客户端改为前端技术实现. 这里首

  • Java Swing仿QQ登录界面效果

    本文实例为大家分享了Java Swing仿QQ登录界面展示的具体代码,供大家参考,具体内容如下 闲来无事将早些时候已实现的QQ登录界面再实现了一遍,纯手工打造(意思是没有用NetBeans.MyEclipse的拖动功能). 源代码如下: package ibees.qq; import java.awt.BorderLayout; import java.net.URL; import javax.swing.ImageIcon; import javax.swing.JButton; impo

随机推荐