当前位置: 首页 > news >正文

10.9作业

1、鼠标和键盘事件

#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
#include <QMouseEvent>widget::widget(QWidget *parent): QWidget(parent), ui(new Ui::widget)
{ui->setupUi(this);this->setWindowFlag(Qt::FramelessWindowHint);
}widget::~widget()
{delete ui;
}void widget::keyPressEvent(QKeyEvent *event)
{//qDebug()<< event->text()<<"被按下的对应键值为:"<<event->key();switch(event->key()){case 'W':case 'w':{if(ui->label1->y()<=-ui->label1->height()){ui->label1->move(ui->label1->x(),this->height());}ui->label1->move(ui->label1->x(),ui->label1->y()-5);}break;case 'S':case 's':{if(ui->label1->y()>=this->height()){ui->label1->move(ui->label1->x(),-ui->label1->height());}ui->label1->move(ui->label1->x(),ui->label1->y()+5);}break;case 'A':case 'a':{if(ui->label1->x()<=-ui->label1->width()){ui->label1->move(this->width(),ui->label1->y());}ui->label1->move(ui->label1->x()-5,ui->label1->y());}break;case 'D':case 'd':{if(ui->label1->x()>=this->width()){ui->label1->move(-ui->label1->width(),ui->label1->y());}ui->label1->move(ui->label1->x()+5,ui->label1->y());}break;} 
}void widget::mouseDoubleClickEvent(QMouseEvent *event)
{if(event->button() == Qt::RightButton){qDebug()<<"右键被双击";}
}void widget::mousePressEvent(QMouseEvent *event)
{temp = event->globalPos() - this->pos();
}
void widget::mouseMoveEvent(QMouseEvent *event)
{if(event->buttons() == Qt::MidButton){qDebug()<<"中键被移动,移动坐标:"<<event->pos();}if(event->buttons() == Qt::RightButton){this->move(event->globalPos()-temp);}
}

http://www.lryc.cn/news/456575.html

相关文章:

  • Go 语言中的错误和异常:设计理念与优势
  • sqli-labs less-20 less-21 less-22 cookie注入
  • IDEA下“File is read-only”可能原因及“找不到或无法加载主类”问题的解决
  • MySQL【知识改变命运】03
  • 【测试】BUG篇——BUG
  • 【高阶数据结构】深度探索二叉树进阶:二叉搜索树概念及其高效实现
  • 上传本地项目到GitHub远程仓库(极简洁操作版)
  • 在安卓中使用 `mobile-ffmpeg` 压缩后的视频,浏览器在线播放提示“没有找到支持的视频格式和 MIME 类型”的解决方案
  • C语言指针plus版练习
  • Kafka 快速入门
  • 探索人们最喜爱的AI工具及其应用影响
  • c语言位域详解
  • 如何修改Spring Boot内置容器默认端口
  • STM32自动下载电路分享及注意事项
  • 【深度学习基础模型】极限学习机(Extreme Learning Machines, ELM)详细理解并附实现代码。
  • 把交换机的两个接口连接起来会怎么样?
  • 无人机陆空双模式。
  • 14. 文档对象模型
  • 【计网】【计网】从零开始学习http协议 ---理解http重定向和请求方法
  • yolov8/9/10/11模型在中医舌苔分类识别中的应用【代码+数据集+python环境+GUI系统】
  • k8s部署安装
  • gpt为什么可以依据上下文来回答问题,依据的是什么原理
  • 2023 CCPC哈尔滨 报告
  • 基于深度学习的手术中的增强现实导航
  • 输电线路缺陷图像检测数据集,导线散股,塔材锈蚀两类,分别为581张和1407张,标注为xml和txt格式 1988张
  • 百度飞桨(paddlepaddle)安装
  • ≌图概念凸显有长度不同的射线
  • 解决Nginx出现“Too many open files”的问题
  • webGL进阶(一)多重纹理效果
  • flink-jdbc-driver