行业知识
Qt 拖动事件
2026-11-13 23:55:43
来源:互联网转载
文章目录
- 1 自定义控件 TextEdit
- 2 实现打开文件功能
- 3 实���鼠标滚轮放大字体
QEvent::DragEnter
当拖动文件进入到窗口/控件中时,触发该事件,它对应的子类是QDragEnterEvent
QEvent::DragLeave
当拖动文件离开窗口/控件时,触发该事件,它对应的子类是QDragLeaveEvent
QEvent::DragMove
当拖动文件在窗口/控件中移动时,触发该事件,它对应的子类是QDragMoveEvent
QEvent::Drop
当拖动文件在窗口/控件中移动时,触发该事件,它对应的子类是QDragMoveEvent
1 自定义控件 TextEdit
自定义一个标签控件TextEditx,让它继承自QTextEdit,然后重写拖放相关的函数。
添加自定义控件类TextEditX ,在 texteditx.h 文件中
// TextEditX.hprotected: // 重写父类的方法 void dragEnterEvent(QDragEnterEvent *e); void dragMoveEvent(QDragMoveEvent *e); void dragLeaveEvent(QDragLeaveEvent *e); void dropEvent(QDropEvent *e);
在texteditx.cpp 文件中
// TextEditX.cppTextEditX::TextEditX(QWidget *parent) : QTextEdit{parent} { // 部件将接受鼠标拖放事件 this->setAcceptDrops(true);}void TextEditX::dragEnterEvent(QDragEnterEvent *e) { qDebug() acceptProposedAction();}void TextEditX::dragMoveEvent(QDragMoveEvent *e) { qDebug()
上一篇:怎么开服务器硬件启动设置?