• 18745阅读
  • 15回复

[已解决]请教大家有没有用Qt做过屏保或待机画面的程序? [复制链接]

上一主题 下一主题
离线kingnight
 
只看楼主 倒序阅读 楼主  发表于: 2010-03-04
— 本帖被 XChinux 执行加亮操作(2010-10-21) —
首先我不是很清楚这个的原理,有知道的麻烦详细解释一下!
个人理解,是否可以用定时器查有没有任何事件发生或其他按键等,没有就出个全屏动画、有就退出,麻烦做过的高手给点意见!

已经解决,我的代码发上来,有同样问题的可以参考,小弟才疏学浅,还请高手指点!
没有上传图片,因为比较大!
poopup.tar.gz (2461 K) 下载次数:1412
[ 此帖被kingnight在2010-03-05 13:08重新编辑 ]
离线kingnight
只看该作者 1楼 发表于: 2010-03-04
大家给点意见呀?是太简单了吗?
离线banyibanyi

只看该作者 2楼 发表于: 2010-03-04
我没做过 不过感觉你说的差不多了 定时一到就刷图片什么的呗 当接收到键盘或鼠标事件就退出,但程序好像要一直在后台跑啊
期待你的成果 也教教我  交流一下
离线九重水

只看该作者 3楼 发表于: 2010-03-04
楼主思路正确,干吧
离线kingnight
只看该作者 4楼 发表于: 2010-03-04
谢谢大家的回复,顺着我的思路我还有点问题,如果有一个控件,在整个屏幕中随机移动的话,就涉及到位置如何确定,我查了一下rand()和srand()等函数,都是一维的,如果设置X 、Y位置的时候,不能根据屏幕宽、高的不同产生不同的随机函数,请教大家有什么办法??
离线banyibanyi

只看该作者 5楼 发表于: 2010-03-04
desk = QApplication::desktop();
    int w = desk->width();// 返回桌面宽度
你是指这样吗?
离线kingnight
只看该作者 6楼 发表于: 2010-03-05
引用第5楼banyibanyi于2010-03-04 17:52发表的  :
desk = QApplication::desktop();
    int w = desk->width();// 返回桌面宽度
你是指这样吗?


  差不多是这意思!产生的范围只能是正方形范围内,不是矩形!
离线banyibanyi

只看该作者 7楼 发表于: 2010-03-05
没明白楼主什么意思  你不是要得到现在的屏幕宽和高吗? 然后通过宽和高产生随机数不是吗
离线kingnight
只看该作者 8楼 发表于: 2010-03-05
谢谢大家的建议,我的程序已经完成,当时没搞明白随机函数怎么用,现在ok了!代码会发在一楼!
离线mightyu
只看该作者 9楼 发表于: 2010-03-18
有个问题请教
如何查询有没有任何事件发生或其他按键?
离线mayuanyi853

只看该作者 10楼 发表于: 2010-09-13
我现在也想用QT做一个屏保程序,运行在ARM平台下linux的,想向你请教请教
离线sd菜
只看该作者 11楼 发表于: 2010-09-26
楼主。。。我下载了你给的程序,但是编译的时候报错了:
void ScreenSaver::slotForegroundChange()//move
{
    int moveX=0,moveY=0;
    qsrand((int)time(0));//这里有错误,说是time没有定义啊?怎么回事?
//    moveX=(int)(screenWidthM*qrand()/(screenWidthM+1.0));
//    moveY=(int)(screenHeightM*qrand()/(screenHeightM+1.0));
        moveX=(int)(qrand()%screenWidthM);
        moveY=(int)(qrand()%screenHeightM);
    foreground->move(moveX,moveY);
    qDebug()<<"slotForegroundChange"<<"X"<<moveX<<"Y"<<moveY;
}
离线liwenxiong
只看该作者 12楼 发表于: 2011-07-07
多个QT进程的话能用吗
离线sidy_wang
只看该作者 13楼 发表于: 2011-10-20
11楼那个问题我也遇到了
才学习,不懂

只看该作者 14楼 发表于: 2013-08-18
我在做一个小程序,涉及到了屏保,是初学者,不太懂,LZ可以QQ交流一下吗?我的QQ 365505424 ,谢谢!!
离线wxy540689

只看该作者 15楼 发表于: 2017-02-09
11楼
#include<stdlib.h>
快速回复
限100 字节
 
上一个 下一个