聊天软件中的窗口上滑和下滑提示上下线
聊天软件中右下角窗口上滑提示有好友上线,窗口下滑提示有好友下线。
在 Qt 下实现此功能,用到的类有 QPoint QTimer
mainwindow.h
1 #ifndef MAINWINDOW_H 2 #define MAINWINDOW_H 3 4 #include <QMainWindow> 5 #include <QPoint> 6 #include <QTimer> 7 8 namespace Ui { 9 class MainWindow; 10 } 11 12 class MainWindow : public QMainWindow 13 { 14 Q_OBJECT 15 16 public: 17 explicit MainWindow(QWidget *parent = 0); 18 void point_to_point(); 19 ~MainWindow(); 20 21 private: 22 Ui::MainWindow *ui; 23 QTimer* M_Timer; 24 QTimer* M_Timer1; 25 QTimer* M_Timer2; 26 int Counter; 27 QPoint curPos; 28 29 private slots: 30 void timerDone(); 31 void timerDone1(); 32 void timerDone2(); 33 }; 34 35 #endif // MAINWINDOW_H
mainwindow.cpp
1 #include "mainwindow.h" 2 #include "ui_mainwindow.h" 3 4 MainWindow::MainWindow(QWidget *parent) : 5 QMainWindow(parent), 6 ui(new Ui::MainWindow) 7 { 8 ui->setupUi(this); 9 M_Timer = new QTimer(); 10 M_Timer1 = new QTimer(); 11 M_Timer2 = new QTimer(); 12 this->move(950,768); 13 curPos=this->pos(); 14 connect(M_Timer, SIGNAL(timeout()),this, SLOT(timerDone())); 15 connect(M_Timer1, SIGNAL(timeout()),this, SLOT(timerDone1())); 16 connect(M_Timer2, SIGNAL(timeout()),this, SLOT(timerDone2())); 17 point_to_point(); 18 } 19 20 MainWindow::~MainWindow() 21 { 22 delete ui; 23 } 24 25 void MainWindow :: point_to_point() 26 { 27 M_Timer->start(100); 28 curPos=this->pos(); 29 QPoint TmpPos(curPos.x(),curPos.y()-10); 30 this->move(TmpPos); 31 } 32 33 void MainWindow :: timerDone() 34 { 35 curPos=this->pos(); 36 QPoint TmpPos(curPos.x(),curPos.y()-10); 37 this->move(TmpPos); 38 Counter = curPos.y(); 39 qDebug() << curPos.y(); 40 if(Counter < 500) 41 { 42 M_Timer->stop(); 43 M_Timer2->start(1000); 44 } 45 } 46 47 void MainWindow :: timerDone1() 48 { 49 curPos=this->pos(); 50 QPoint TmpPos(curPos.x(),curPos.y()+10); 51 this->move(TmpPos); 52 Counter = curPos.y(); 53 if(Counter > 660) 54 { 55 M_Timer1->stop(); 56 } 57 } 58 59 void MainWindow :: timerDone2() 60 { 61 curPos=this->pos(); 62 QPoint TmpPos(curPos.x(),curPos.y()); 63 this->move(TmpPos); 64 M_Timer2->stop(); 65 M_Timer1->start(100); 66 }
2014-07-28 21:03:08
转载于:https://www.cnblogs.com/lweleven/p/onlinewaring.html
聊天软件中的窗口上滑和下滑提示上下线相关推荐
- android上滑隐藏动画,ListView上滑和下滑,显示和隐藏Toolbar的实现方法
1.准备Toolbar 先隐藏系统自带的actionbar,在AndroidManifest.xml文件标签中: android:theme="@style/Theme.AppCompat. ...
- js判断手指的上滑,下滑,左滑,右滑,事件监听
2019独角兽企业重金招聘Python工程师标准>>> 原理:1:当开始一个touchstart事件的时候,获取此刻手指的横坐标startX和staerY: 2:当触发touchmo ...
- 移动端html右滑空白,移动端之touch事件_上滑、下滑、左滑和右滑
开发app的前端框架有哪些 移动 原理:第一,当开始一个touchstart事件的时候,获取此刻手指的横坐标startX和纵坐标startY:第二,当触发touchmove事件时,在获取此时手指的横坐 ...
- js判断手指上滑和下滑
<script>var startX = 0,startY = 0;function touchStart(evt){try{var touch = evt.touches[0], //获 ...
- 判断滚动条是上滑还是下滑
var beforeScrollTop = document.body.scrollTop;$(window).scroll(function(){var afterScrollTop = docum ...
- Qt 实现聊天软件中自定义表情包(随笔记录)
简述: QT实现自定义表情包,通过对(能够设置表情的行列数 , 表情的大小,表情的个数.最大行数等) 效果: 代码如下: EmoticonsWidget主要实现表情包窗口. EmoticonsWidg ...
- 判断listview是上滑还是下滑的方法
方法一: 用setOnScrollListener(new AbsListView.OnScrollListener())来实现,判断滑动后显示的第一个条目 ,与滑动前的第一个条目的大小来判断, 这种 ...
- vue js判断长按触发及手指的上滑、下滑、左滑、又滑
<span class="btn" @touchstart="touchstart()" @touchmove="touchmove()&quo ...
- 检测鼠标上滑还是下滑
$(function () {var scrollFunc = function (e) {e = e || window.event;var t1;var t2;if (e.wheelDelta) ...
最新文章
- 《CIO新思维III-变革时代的企业IT战略与实务》即将出版,战略观点征集活动中...
- 微服务架构 — 设计原则
- 【GNN】2022年最新3篇GNN领域综述!
- Apache Dubbo 3.0.0 正式发布 - 全面拥抱云原生
- 51nod 1393 0和1相等串 思路 : map存前缀和
- spring依赖注入_Spring源码阅读:Spring依赖注入容器
- avalon2学习教程15指令总结
- 35、JAVA_WEB开发基础之过滤器
- Win7系统提示NVIDIA显示设置不可用怎么办
- 【测试】提交BUG的标准规范
- 大数据分析平台搭建方式有哪些
- 最好用16进制工具wxHexEditor
- 冗余链路中STP协议的工作过程以及二期STP收敛速度优化方案介绍
- nginx: [emerg] unknown directive “锘? in******
- 计算机的USB接口可以扩展吗,电脑USB接口不够用怎么解决
- 上偏续关系哈斯图_A={a,b,c}定义在P(A)上的包含关系是一个偏序关系,哈斯图怎么画?...
- size_t_梁斌_新浪博客
- 使用 MAUI 在 Windows 和 Linux 上绘制 PPT 的图表
- 给自己看的(摘自他人)
- 【Python Web】Flask框架(一)快速开发网站