呵呵!一个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
相关文档:
堆和栈的区别
一、预备知识—程序的内存分配
一个由c/C++编译的程序占用的内存分为以下几个部分
1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。
2、堆区(heap)— 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。 ......
1.引言
本文的写作目的并不在于提供C/C++程序员求职面试指导,而旨在从技术上分析面试题的内涵。文中的大多数面试题来自各大论坛,部分试题解答也参考了网友的意见。
许多面试题看似简单,却需要深厚的基本功才能给出完美的解答。企业要求面试者写一个最简单的strc ......
N 当用两个补码表示的带符号数进行运算时,N=1表示运算的结果为负数;N=0表示运算的结果为正数或零.
Z Z=1表示运算的结果为零,Z=0表示运算的结果非零。
C 可以有4种方法设置C的值:
加法运算(包括CMN):当运算结果产生了进位时(无符号数溢出),C=1,否则C=0。
减法运 ......
面试时被问到过,不甚明了,网上百度一下,整合了两个仁兄的文章,如下。:-)
时常在cpp的代码之中看到这样的代码:
#ifdef __cplusplus //c++编译环境中才会定义__cplusplus (plus就是"+"的意思)
extern "C" { //告诉编译器下面的函数是c语言函数(因为c++和c语言对函数的编译转换不一样,主要是c++中存在重载)
#en ......
/* =========================================================================== */
/* Project: s3c44b0_lib & ......