呵呵!一个QT通过贴图实现的模拟时钟 c文件
#include "draw.h"
#include "ui_draw.h"
#include <QPixmap>
draw::draw(QWidget *parent)
: QDialog(parent), ui(new Ui::draw)
{
ui->setupUi(this);
// this->setWindowFlags( Qt::FramelessWindowHint);
ctrlPoint.setX(this->width() / 2);
ctrlPoint.setY(this->height() / 2);
m_pixmap = QPixmap("Skin/Night Blue/main.png");
m_mainScale = this->width() /((qreal)(m_pixmap.width())) ;
m_pixmap = QPixmap("Skin/Night Blue/hour.png");
m_hourScale = (this->width()/(qreal)2.0 ) / (m_pixmap.width()) ;
m_pixmap = QPixmap("Skin/Night Blue/min.png");
m_minScale = (this->width()/(qreal)1.8 ) / (m_pixmap.width()) ;
m_pixmap = QPixmap("Skin/Night Blue/sec.png");
m_secScale = (this->width()/(qreal)1.5 ) / (m_pixmap.width()) ;
// qDebug("m_mainScale = %f , m_hourScale = %f , m_minScale = %f ,m_secScale = %f",m_mainScale,m_hourScale,m_minScale,m_secScale);
m_secRotation = QTime::currentTime ().second() *6 - 90;
m_minRotation = QTime::currentTime ().minute() *6 - 90;
m_hourRotation = m_minRotation / 10 + QTime::currentTime ().hour() * 30 - 90;
upTimer = new QTimer(this);
connect(upTimer,SIGNAL(timeout()),this,SLOT(updataTime()));
upTimer->start(500);
}
draw::~draw()
{
delete ui;
}
void draw::paintEvent(QPaintEvent *event)
{
//face
QPainter painter(this);
m_pixmap = QPixmap("Skin/Night Blue/main.png");
painter.scale(m_mainScale,m_mainScale);
painter.drawPixmap(QPointF(0, 0), m_pixmap);
//hour
QPainter p
相关文档:
曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?
本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明。
我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C++声明的“右左法则&rdquo ......
1.引言
本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。
许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strc ......
经常需要在程序中将远程传来的字节流进行结构化,或者将结构化的数据变成字节流传给远程主机。在C/C++程序中,结构化数据通常用结构体来组织,结构体也能够方便的转换为字节流,因此结构化的数据传输本不该成为问题,但在VC或GCC的默认设置下编译出的程序,却有一个值得注意的问题——结构体的对齐。 ......
面试时被问到过,不甚明了,网上百度一下,整合了两个仁兄的文章,如下。:-)
时常在cpp的代码之中看到这样的代码:
#ifdef __cplusplus //c++编译环境中才会定义__cplusplus (plus就是"+"的意思)
extern "C" { //告诉编译器下面的函数是c语言函数(因为c++和c语言对函数的编译转换不一样,主要是c++中存在重载)
#en ......
/* =========================================================================== */
/* Project: mp3 player */
/* File: & ......