在《​​PyQt学习随笔:Qt中tem Views(Model-Based)和Item Widgets(Item-Based)控件的用途和关系​​》中介绍了,Model用于存储数据,View用于展现并接受用户操作。在实现时,Model和View的交互过程有如下几种:

1、初始化时,通过view类的setModel函数将View和Model进行关联;

2、在项目中,Model中的数据一般来源于数据源(如数据库、文件、消息等),由Model负责数据的读取、更新、增加和删除,数据变化后,会自动发dataChanged 信号给所有连接的view以便它们更新展示信息;

3、在view中也可以对数据进行变更,变更后需要view主动调用model的setData函数来数据更新到Model,Model需要根据应用的情况再触发数据变动的反馈给数据源。