• Qt之使用QTreeView实现QQ登录好友列表


    一.效果

     从效果图中可以看出,有以下特点:
    1.悬浮滚动条
    自定义半透明滚动条悬浮在Item之上,与原挤占Item宽度的滚动条效果相同
    2.鼠标点击
    双击Item,打开聊天对话框
    单机视频通话图标,开启视频通话
    3.鼠标hover
    鼠标移动到头像、昵称、个性签名等区域时有ToolTip提示
    4.支持多个分组
    各个分组下有多个好友,其中分组为一级节点,分组下的好友为二级节点

    二.原理

    Model-View-Controller(MVC), 是从Smalltalk发展而来的一种设计模式,常被用于构建用户界面。在MVC中,模型负责获取需要显示的数据,并且存储这些数据的修改。每种数据类型都有它自己对应的模型,但是这些模型提供一个相同的API,用于隐藏内部实现。视图用于将模型数据显示给用户。对于数量很大的数据,或许只显示一小部分,这样就能很好的提高性能。控制器是模型和视图之间的媒介,将用户的动作解析成对数据的操作,比如查找数据或者修改数据,然后转发给模型执行,最后再将模型中需要被显示的数据直接转发给视图进行显示。MVC的核心思想是分层,不同的层应用不同的功能。
    Qt 4 开始,引入了类似的model/view架构来处理数据和显示之间的关系。当MVC的V和C结合在一起,我们就得到了model/view 构。这种架构依然将数据和界面分离,但是框架更为简单。同样,这种架构也允许使用不同界面显示同一数据,也能够在不改变数据的情

  • 相关阅读:
    【AI应用】海康威视iVMS-4200软件安装
    HarmonyOS访问数据库实例(3)--用ORM Bee测下HarmonyOS到底有多牛
    QT程序打包
    代码随想录动态规划——不同路径
    c++&qt day4
    63. 不同路径 II java解决
    第四十三天&jmeter组件及其操作(2)
    Kubernetes 包管理 Helm Charts
    华为云云耀云服务器L实例评测| 之性能测试
    【定义】三阶行列式
  • 原文地址:https://blog.csdn.net/caoshangpa/article/details/125882695