⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hello.cpp

📁 基于qt的hello world 程序,在arm 的开发板上运行,
💻 CPP
字号:
/****************************************************************************** Form implementation generated from reading ui file 'hello.ui'**** Created: Wed Jun 23 18:02:36 2004**      by:  The User Interface Compiler (uic)**** WARNING! All changes made in this file will be lost!****************************************************************************/#include "hello.h"#include <qtopia/qpeapplication.h>#ifdef QWS#include <qtopia/qcopenvelope_qws.h>#endif#include <qtopia/config.h>#include <qtopia/timestring.h>#include <qtopia/alarmserver.h>#include <qtopia/sound.h>#include <qtopia/resource.h>#include <qlayout.h>#include <qvariant.h>#include <qtooltip.h>#include <qwhatsthis.h>#include <qpushbutton.h>#include <qtimer.h>#include <qpainter.h>#include <qpixmap.h>#include <qwhatsthis.h>/*  *  Constructs a Hello which is a child of 'parent', with the  *  name 'name' and widget flags set to 'f'  */Hello::Hello( QWidget* parent,  const char* name, WFlags fl )    : QWidget( parent, name, fl ){    if ( !name )	setName( "Hello" );    resize( 240, 320 );     setWFlags(fl | Qt::WStyle_ContextHelp);    setMinimumSize( QSize( 240, 320 ) );    setMaximumSize( QSize( 240, 320 ) );    setSizeIncrement( QSize( 240, 320 ) );    setBaseSize( QSize( 240, 320 ) );    QPalette pal;    QColorGroup cg;    cg.setColor( QColorGroup::Foreground, black );    cg.setColor( QColorGroup::Button, QColor( 192, 192, 192) );    cg.setColor( QColorGroup::Light, white );    cg.setColor( QColorGroup::Midlight, QColor( 223, 223, 223) );    cg.setColor( QColorGroup::Dark, QColor( 96, 96, 96) );    cg.setColor( QColorGroup::Mid, QColor( 128, 128, 128) );    cg.setColor( QColorGroup::Text, black );    cg.setColor( QColorGroup::BrightText, white );    cg.setColor( QColorGroup::ButtonText, black );    cg.setColor( QColorGroup::Base, white );    cg.setColor( QColorGroup::Background, white );    cg.setColor( QColorGroup::Shadow, black );    cg.setColor( QColorGroup::Highlight, black );    cg.setColor( QColorGroup::HighlightedText, white );    pal.setActive( cg );    cg.setColor( QColorGroup::Foreground, black );    cg.setColor( QColorGroup::Button, QColor( 192, 192, 192) );    cg.setColor( QColorGroup::Light, white );    cg.setColor( QColorGroup::Midlight, QColor( 220, 220, 220) );    cg.setColor( QColorGroup::Dark, QColor( 96, 96, 96) );    cg.setColor( QColorGroup::Mid, QColor( 128, 128, 128) );    cg.setColor( QColorGroup::Text, black );    cg.setColor( QColorGroup::BrightText, white );    cg.setColor( QColorGroup::ButtonText, black );    cg.setColor( QColorGroup::Base, white );    cg.setColor( QColorGroup::Background, white );    cg.setColor( QColorGroup::Shadow, black );    cg.setColor( QColorGroup::Highlight, black );     cg.setColor( QColorGroup::HighlightedText, white );    pal.setInactive( cg );    cg.setColor( QColorGroup::Foreground, QColor( 128, 128, 128) );    cg.setColor( QColorGroup::Button, QColor( 192, 192, 192) );    cg.setColor( QColorGroup::Light, white );    cg.setColor( QColorGroup::Midlight, QColor( 220, 220, 220) );    cg.setColor( QColorGroup::Dark, QColor( 96, 96, 96) );    cg.setColor( QColorGroup::Mid, QColor( 128, 128, 128) );    cg.setColor( QColorGroup::Text, black );    cg.setColor( QColorGroup::BrightText, white );    cg.setColor( QColorGroup::ButtonText, QColor( 128, 128, 128) );    cg.setColor( QColorGroup::Base, white );    cg.setColor( QColorGroup::Background, white );    cg.setColor( QColorGroup::Shadow, black );    cg.setColor( QColorGroup::Highlight, black );    cg.setColor( QColorGroup::HighlightedText, white );    pal.setDisabled( cg );    setPalette( pal );    QFont f( font() );    f.setFamily( "adobe-helvetica" );    f.setPointSize( 29 );    f.setBold( TRUE );    setFont( f );     setCaption( tr( "" ) );    //手动添加的代码    t = "Hello,World";    b = 0;    QTimer *timer = new QTimer(this);    connect( timer, SIGNAL(timeout()), SLOT(animate()) );    timer->start( 40 );    QWhatsThis::add(  this, tr( "this is hello, world sample." ) );}/*   *  Destroys the object and frees any allocated resources */Hello::~Hello(){    // no need to delete child widgets, Qt does it all for us}/*  This private slot is called each time the timer fires.*///以下是手动添加的代码void Hello::animate(){    b = (b + 1) & 15;    repaint( FALSE );}/*  Handles mouse button release events for the Hello widget.  We emit the clicked() signal when the mouse is released inside  the widget.*/void Hello::mouseReleaseEvent( QMouseEvent *e ){    if ( rect().contains( e->pos() ) )        emit clicked();}/*  Handles paint events for the Hello widget.  Flicker-free update. The text is first drawn in the pixmap and the  pixmap is then blt'ed to the screen.*/void Hello::paintEvent( QPaintEvent * ){    static int sin_tbl[16] = {        0, 38, 71, 92, 100, 92, 71, 38,	0, -38, -71, -92, -100, -92, -71, -38};    if ( t.isEmpty() )        return;    // 1: Compute some sizes, positions etc.    QFontMetrics fm = fontMetrics();    int w = fm.width(t) + 20;    int h = fm.height() * 2;    int pmx = width()/2 - w/2;    int pmy = height()/2 - h/2;    // 2: Create the pixmap and fill it with the widget's background    QPixmap pm( w, h );    pm.fill( this, pmx, pmy );    // 3: Paint the pixmap. Cool wave effect    QPainter p;    int x = 10;    int y = h/2 + fm.descent();    int i = 0;    p.begin( &pm );    p.setFont( font() );    while ( !t[i].isNull() ) {        int i16 = (b+i) & 15;        p.setPen( QColor((15-i16)*16,255,255,QColor::Hsv) );        p.drawText( x, y-sin_tbl[i16]*h/800, t.mid(i,1), 1 );        x += fm.width( t[i] );        i++;    }    p.end();    // 4: Copy the pixmap to the Hello widget    bitBlt( this, pmx, pmy, &pm );}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -