biff-main-cpp.html
来自「qtopiaphone英文帮助,用于初学者和开发人员,初学者可以用来学习,开发人」· HTML 代码 · 共 181 行
HTML
181 行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Qt Toolkit - biff/main.cpp example file</title><style type="text/css"><!--h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm; }a:link { color: #004faf; text-decoration: none }a:visited { color: #672967; text-decoration: none }body { background: white; color: black; }--></style></head><body bgcolor="#ffffff"><table width="100%"><tr><td><a href="index.html"><img width="100" height="100" src="qtlogo.png"alt="Home" border="0"><img width="100"height="100" src="face.png" alt="Home" border="0"></a><td valign="top"><div align="right"><img src="dochead.png" width="472" height="27"><br><a href="classes.html"><b>Classes</b></a>- <a href="annotated.html">Annotated</a>- <a href="hierarchy.html">Tree</a>- <a href="functions.html">Functions</a>- <a href="index.html">Home</a>- <a href="topicals.html"><b>Structure</b> <font face="Arial,Helvetica,Geneva,Swiss,SunSans-Regular" align="center" size=32>Qte</font></a></div></table><h1 align=center>Biff (UNIX only)</h1><br clear="all"> Biff is a simple graphical program to indicate whether there is new mail; it looks exactly like xbiff but is much shorter. <hr> Header file: <pre>/****************************************************************************** $Id: qt/examples/biff/biff.h 2.3.8 edited 2004-05-12 $**** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.**** This file is part of an example program for Qt. This example** program may be used, distributed and modified without limitation.*******************************************************************************/#ifndef BIFF_H#define BIFF_H#include <<a href="qwidget-h.html">qwidget.h</a>>#include <<a href="qdatetime-h.html">qdatetime.h</a>>#include <<a href="qpixmap-h.html">qpixmap.h</a>>class Biff : public QWidget{ Q_OBJECTpublic: Biff( <a href="qwidget.html">QWidget</a> *parent=0, const char *name=0 );protected: void timerEvent( <a href="qtimerevent.html">QTimerEvent</a> * ); void paintEvent( <a href="qpaintevent.html">QPaintEvent</a> * ); void mousePressEvent( <a href="qmouseevent.html">QMouseEvent</a> * );private: <a href="qdatetime.html">QDateTime</a> lastModified; <a href="qpixmap.html">QPixmap</a> hasNewMail; <a href="qpixmap.html">QPixmap</a> noNewMail; <a href="qstring.html">QString</a> mailbox; bool gotMail;};#endif // BIFF_H</pre> <hr> biff.cpp implements this custom widget. Note in particular how two images (hasmail_bmp_data and nomail_bmp_data, both from bmp.cpp) are included into the executable. <pre>/****************************************************************************** $Id: qt/examples/biff/biff.cpp 2.3.8 edited 2004-05-12 $**** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.**** This file is part of an example program for Qt. This example** program may be used, distributed and modified without limitation.*******************************************************************************/#include "biff.h"#include <<a href="qstring-h.html">qstring.h</a>>#include <<a href="qfileinfo-h.html">qfileinfo.h</a>>#include <<a href="qpainter-h.html">qpainter.h</a>>#include <unistd.h>#include <stdlib.h>#include "bmp.cpp"Biff::Biff( <a href="qwidget.html">QWidget</a> *parent, const char *name ) : <a href="qwidget.html">QWidget</a>( parent, name, WType_Modal ){ <a href="qfileinfo.html">QFileInfo</a> fi = QString(getenv( "MAIL" )); if ( !fi.<a href="qfileinfo.html#a1625c">exists</a>() ) { <a href="qstring.html">QString</a> s( "/var/spool/mail/" ); s += getlogin(); fi.<a href="qfileinfo.html#4900f7">setFile</a>( s ); } if ( fi.<a href="qfileinfo.html#a1625c">exists</a>() ) { mailbox = fi.<a href="qfileinfo.html#b8684f">absFilePath</a>(); <a href="qobject.html#4c6b67">startTimer</a>( 1000 ); } <a href="qwidget.html#c0b5fb">setMinimumSize</a>( 48, 48 ); <a href="qwidget.html#c78dce">setMaximumSize</a>( 48, 48 ); <a href="qwidget.html#8fcbbe">resize</a>( 48, 48 ); hasNewMail.loadFromData( hasmail_bmp_data, hasmail_bmp_len ); noNewMail.loadFromData( nomail_bmp_data, nomail_bmp_len ); gotMail = FALSE; lastModified = fi.<a href="qfileinfo.html#7187bd">lastModified</a>();}void <a name="34"></a>Biff::timerEvent( <a href="qtimerevent.html">QTimerEvent</a> * ){ <a href="qfileinfo.html">QFileInfo</a> fi( mailbox ); bool newState = ( fi.<a href="qfileinfo.html#7187bd">lastModified</a>() != lastModified && fi.<a href="qfileinfo.html#7187bd">lastModified</a>() > fi.<a href="qfileinfo.html#258b1f">lastRead</a>() ); if ( newState != gotMail ) { if ( gotMail ) lastModified = fi.<a href="qfileinfo.html#7187bd">lastModified</a>(); gotMail = newState; <a href="qwidget.html#7569b1">repaint</a>( FALSE ); }}void <a name="35"></a>Biff::paintEvent( <a href="qpaintevent.html">QPaintEvent</a> * ){ if ( gotMail ) <a href="qpaintdevice.html#35ae2e">bitBlt</a>( this, 0, 0, &hasNewMail ); else <a href="qpaintdevice.html#35ae2e">bitBlt</a>( this, 0, 0, &noNewMail );}void <a name="36"></a>Biff::mousePressEvent( <a href="qmouseevent.html">QMouseEvent</a> * ){ <a href="qfileinfo.html">QFileInfo</a> fi( mailbox ); lastModified = fi.<a href="qfileinfo.html#7187bd">lastModified</a>();}</pre> <hr> Main:<pre>/****************************************************************************** $Id: qt/examples/biff/main.cpp 2.3.8 edited 2004-05-12 $**** Copyright (C) 1992-2000 Trolltech AS. All rights reserved.**** This file is part of an example program for Qt. This example** program may be used, distributed and modified without limitation.*******************************************************************************/#include <<a name="qapplication.h"></a><a href="qapplication-h.html">qapplication.h</a>>#include "biff.h"int main( int argc, char ** argv ){ <a name="QApplication"></a><a href="qapplication.html">QApplication</a> a( argc, argv ); Biff b; a.<a name="setMainWidget"></a><a href="qapplication.html#7ad759">setMainWidget</a>( &b ); b.<a name="show"></a><a href="qwidget.html#200ee5">show</a>(); return a.<a name="exec"></a><a href="qapplication.html#84c7bf">exec</a>();}</pre><p><address><hr><div align="center"><table width="100%" cellspacing="0" border="0"><tr><td>Copyright
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?