PyQt5学习笔记
setMouseTracking
bool mouseTracking
这个属性保存的是窗口部件跟踪鼠标是否生效。
如果鼠标跟踪失效(默认),当鼠标被移动的时候只有在至少一个鼠标按键被按下时,这个窗口部件才会接收鼠标移动事件。
如果鼠标跟踪生效,如果没有按键被按下,这个窗口部件也会接收鼠标移动事件。
也可以参考mouseMoveEvent ()和QApplication::setGlobalMouseTracking ()。
通过setMouseTracking ()设置属性值并且通过hasMouseTracking ()来获得属性值。
调用这个函数后,如想使mouseMoveEvent有效,也就是在鼠标在区域内移动就会触发,而非鼠标按键按下时才触发,注意只能是QWidget,如果是QMainwindow,则无效。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
QTableWidget与QTableView的区别
QTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC、C#中的DataGrid。QTableWidget继承自QTableView。QSqlTableModel能与QTableView绑定,但不能于QTableWidget绑定。
QTableWidget是QTableView的子类,主要的区别是QTableView可以使用自定义的数据模型来显示内容(也就是先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型,并且其单元格数据是QTableWidgetItem的对象来实现的(也就是不需要数据源,将逐个单元格内的信息填好即可)。这主要体现在QTableView类中有setModel成员函数,而到了QTableWidget类中,该成员函数变成了私有。使用QTableWidget就离不开QTableWidgetItem。QTableWidgetItem用来表示表格中的一个单元格,整个表格都需要用逐个单元格构建起来。
具体区别表格
区别点 |
QTableView |
QTableWidget |
继承关系 |
|
QTableWidget继承自QTableView |
使用数据模型setModel |
可以使用setModel设置数据模型 |
setModel是私有函数,不能使用该函数设置数据模型 |
显示复选框setCheckState |
没有函数实现复选框 |
QTableWidgetItem类中的setCheckState(Qt::Checked);可以设置复选框 |
与QSqlTableModel绑定 |
QTableView能与QSqlTableModel绑定 |
QtableWidget不能与QSqlTableModel绑定
|
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
2010-09-01 MFC坐标转换