2 yxts122 YXTS122 于 2016.02.04 07:42 提问

这个电子钟的代码错哪了?

图片说明
图片说明

 #include "digiclock.h"
#include <QPalette>
#include <QTimer>
#include <QTime>
#include <QMouseEvent>

DigiClock::DigiClock(QWidget *parent):
    QLCDNumber(parent)
{
    QPalette p=QPalette();
    p.setColor(QPalette::Window,Qt::blue);
    setPalette(p);
    setWindowFlags(Qt::FramelessWindowHint);
    setWindowOpacity(0.5);
    QTimer *timer=new QTimer(this);
    connect(timer,SIGNAL(timeout()),this,SLOT(showTime()));
    timer->start(1000);
    showTime();
    resize(150,60);
    showColon=true;
}

void DigiClock::showTime()
{
    QTime time=QTime::currentTime();
    QString text=time.toString("hh:mm");
    if(showColon)
    {
        text[2]=':';
        showColon=false;
    }
    else
    {
        text[2]=' ';
        showColon=true;
    }
    display(text);
}

void DigiClock::mousePressEvent(QMouseEvent *event)
{
    if(event->button()==Qt::LeftButton)
    {
        dragPosition=event->globalPos()-frameGeometry().topLeft();
        event->accept();
    }
    if(event->button()==Qt::RightButton)
    {
        close();
    }
}

void DigiClock::mouseMoveEvent(QMouseEvent *event)
{
    if(event->buttons()&Qt::LeftButton)
    {
        move(event->globalPos()-dragPosition);
        event->accept();
    }
}



3个回答

caozhy
caozhy   Ds   Rxr 2016.02.04 08:00
已采纳

http://blog.csdn.net/alan00000/article/details/7968080
看看 QLCDNumber是不是没有定义

YXTS122
YXTS122 回复caozhy:没报错了,但运行后,什么也没看到,也没出现个窗口什么的
接近 2 年之前 回复
YXTS122
YXTS122 回复caozhy:是没有include这个QLCDNumber文件
接近 2 年之前 回复
caozhy
caozhy   Ds   Rxr 2016.02.04 07:54

你定义的是showTime
你调用的却是show

YXTS122
YXTS122   2016.02.04 09:19

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!