基于Qt5的闹钟实现代码Word文件下载.doc

上传人:wj 文档编号:1462869 上传时间:2023-04-30 格式:DOC 页数:7 大小:135.50KB
下载 相关 举报
基于Qt5的闹钟实现代码Word文件下载.doc_第1页
第1页 / 共7页
基于Qt5的闹钟实现代码Word文件下载.doc_第2页
第2页 / 共7页
基于Qt5的闹钟实现代码Word文件下载.doc_第3页
第3页 / 共7页
基于Qt5的闹钟实现代码Word文件下载.doc_第4页
第4页 / 共7页
基于Qt5的闹钟实现代码Word文件下载.doc_第5页
第5页 / 共7页
基于Qt5的闹钟实现代码Word文件下载.doc_第6页
第6页 / 共7页
基于Qt5的闹钟实现代码Word文件下载.doc_第7页
第7页 / 共7页
亲,该文档总共7页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

基于Qt5的闹钟实现代码Word文件下载.doc

《基于Qt5的闹钟实现代码Word文件下载.doc》由会员分享,可在线阅读,更多相关《基于Qt5的闹钟实现代码Word文件下载.doc(7页珍藏版)》请在冰点文库上搜索。

基于Qt5的闹钟实现代码Word文件下载.doc

QSystemTrayIcon>

namespaceUi{

classWidget;

}

classWidget:

publicQWidget

{

Q_OBJECT

public:

explicitWidget(QWidget*parent=0);

~Widget();

signals:

voidisCurrentTime();

private:

Ui:

:

Widget*ui;

voidinit();

voidlayout();

voidcon();

QLCDNumber*lcdNumber;

QLabel*label;

QTimeEdit*timeEdit;

QPushButton*button;

QTimer*timer;

QTimer*uptimer;

QTimer*dtimer;

QTimer*itimer;

QRectrect;

intx;

inty;

doubledu;

QSystemTrayIcon*trayIcon;

QAction*restoreAct;

QAction*quitAct;

QMenu*trayIconMenu;

privateslots:

voidclockChange();

voiddialogUp();

voidmini();

voiddown();

voidcomToCur();

protected:

voidcloseEvent(QCloseEvent*e);

};

#endif//WIDGET_H

源文件widget.cpp代码如下:

#include"

widget.h"

ui_widget.h"

QtDebug>

QDesktopWidget>

Widget:

Widget(QWidget*parent):

QWidget(parent),

ui(newUi:

Widget)

ui->

setupUi(this);

init();

layout();

con();

voidWidget:

init()

setWindowTitle("

我的闹钟"

);

setFixedSize(300,80);

timer=newQTimer;

uptimer=newQTimer;

dtimer=newQTimer;

itimer=newQTimer;

lcdNumber=newQLCDNumber;

lcdNumber->

setFixedSize(150,50);

setDigitCount(12);

setSegmentStyle(QLCDNumber:

Flat);

display(QTime:

currentTime().toString("

hh:

mm:

ss:

zzz"

));

label=newQLabel("

闹钟"

timeEdit=newQTimeEdit;

timeEdit->

setDisplayFormat("

ss"

button=newQPushButton("

确定"

trayIcon=newQSystemTrayIcon;

trayIcon->

setIcon(QIcon("

/new/prefix1/clock.ico"

show();

setWindowIcon(QIcon("

restoreAct=newQAction("

显示"

this);

quitAct=newQAction("

退出"

trayIconMenu=newQMenu;

trayIconMenu->

addAction(restoreAct);

addAction(quitAct);

setContextMenu(trayIconMenu);

setWindowFlags(Qt:

WindowStaysOnTopHint);

layout()

QHBoxLayout*rightTopLay=newQHBoxLayout;

rightTopLay->

addWidget(label);

addWidget(timeEdit);

QHBoxLayout*rightButtonLay=newQHBoxLayout;

rightButtonLay->

addStretch();

addWidget(button);

QVBoxLayout*rightLay=newQVBoxLayout;

rightLay->

addLayout(rightTopLay);

addLayout(rightButtonLay);

QHBoxLayout*m=newQHBoxLayout;

m->

addWidget(lcdNumber);

addLayout(rightLay);

setLayout(m);

QDesktopWidget*p=newQDesktopWidget;

p=QApplication:

desktop();

//

rect=p->

rect();

x=rect.right()-width()-2;

y=rect.bottom()+30;

setGeometry(x,y,width(),height());

con()

connect(timer,SIGNAL(timeout()),this,SLOT(clockChange()));

timer->

start

(1);

connect(uptimer,SIGNAL(timeout()),this,SLOT(dialogUp()));

uptimer->

start(20);

connect(dtimer,SIGNAL(timeout()),this,SLOT(down()));

dtimer->

connect(button,SIGNAL(clicked(bool)),dtimer,SIGNAL(timeout()));

connect(button,SIGNAL(clicked(bool)),this,SLOT(mini()));

connect(itimer,SIGNAL(timeout()),this,SLOT(comToCur()));

itimer->

connect(restoreAct,SIGNAL(triggered(bool)),uptimer,SIGNAL(timeout()));

connect(this,SIGNAL(isCurrentTime()),uptimer,SIGNAL(timeout()));

connect(quitAct,SIGNAL(triggered(bool)),this,SLOT(close()));

clockChange()

dialogUp()

show();

if(y>

=rect.bottom()-height()-50)

{

y-=2;

}

else{

uptimer->

stop();

down()

if(y<

rect.bottom())

y+=height()+20;

else

dtimer->

mini()

hide();

closeEvent(QCloseEvent*e)

QMessageBox:

information(0,"

"

您确定要退出吗?

"

comToCur()

if(QVariant(QTime:

currentTime().toString())==QVariant(timeEdit->

time()).toString())

QApplication:

beep();

emitisCurrentTime();

~Widget()

deleteui;

程序运行截图:

添加铃声:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2