📄 rot13-rot13-cpp.html
字号:
<!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 - rot13/rot13.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>Rot13</h1><br clear="all"> In this example you can enter a text in one Mulitilineedit widget and it is displayed in the edit widget at the right transformed using the rot13 algorithm. <hr> Header file: <pre>/****************************************************************************** $Id: qt/examples/rot13/rot13.h 2.3.8 edited 2004-05-12 $**** Definition of something or other**** Created : 979899**** Copyright (C) 1997 by 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 ROT13_H#define ROT13_H#include <<a href="qwidget-h.html">qwidget.h</a>>class QMultiLineEdit;class Rot13: public QWidget { Q_OBJECTpublic: Rot13(); <a href="qstring.html">QString</a> rot13( const QString & ) const;private slots: void changeLeft(); void changeRight();private: <a href="qmultilineedit.html">QMultiLineEdit</a> * left, * right;};#endif</pre> <hr> Implementation:<pre>/****************************************************************************** $Id: qt/examples/rot13/rot13.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 "rot13.h"#include <<a name="qmultilineedit.h"></a><a href="qmultilineedit-h.html">qmultilineedit.h</a>>#include <<a name="qpushbutton.h"></a><a href="qpushbutton-h.html">qpushbutton.h</a>>#include <<a name="qapplication.h"></a><a href="qapplication-h.html">qapplication.h</a>>#include <<a name="qlayout.h"></a><a href="qlayout-h.html">qlayout.h</a>>Rot13::Rot13(){ left = new <a name="QMultiLineEdit"></a><a href="qmultilineedit.html">QMultiLineEdit</a>( this, "left" ); right = new <a href="qmultilineedit.html">QMultiLineEdit</a>( this, "right" ); <a name="connect"></a><a href="qobject.html#fbde73">connect</a>( left, SIGNAL(textChanged()), this, SLOT(<a name="changeRight"></a><a href="#409">changeRight</a>()) ); <a href="qobject.html#fbde73">connect</a>( right, SIGNAL(textChanged()), this, SLOT(<a name="changeLeft"></a><a href="#408">changeLeft</a>()) ); <a name="QPushButton"></a><a href="qpushbutton.html">QPushButton</a> * quit = new <a href="qpushbutton.html">QPushButton</a>( "&Quit", this ); quit-><a name="setFocusPolicy"></a><a href="qwidget.html#f92b0f">setFocusPolicy</a>( NoFocus ); <a href="qobject.html#fbde73">connect</a>( quit, SIGNAL(clicked()), qApp, SLOT(quit()) ); <a name="QGridLayout"></a><a href="qgridlayout.html">QGridLayout</a> * l = new <a href="qgridlayout.html">QGridLayout</a>( this, 2, 2, 5 ); l-><a name="addWidget"></a><a href="qgridlayout.html#dac29c">addWidget</a>( left, 0, 0 ); l-><a href="qgridlayout.html#dac29c">addWidget</a>( right, 0, 1 ); l-><a href="qgridlayout.html#dac29c">addWidget</a>( quit, 1, 1, AlignRight ); left->setFocus();}void <a name="408"></a>Rot13::changeLeft(){ left->blockSignals( TRUE ); left->setText( <a name="rot13"></a><a href="#410">rot13</a>( right->text() ) ); left->blockSignals( FALSE );}void <a name="409"></a>Rot13::changeRight(){ right->blockSignals( TRUE ); right->setText( <a href=#410>rot13</a>( left->text() ) ); right->blockSignals( FALSE );}<a name="QString"></a><a href="qstring.html">QString</a> <a name="410"></a>Rot13::rot13( const QString & input ) const{ <a href="qstring.html">QString</a> r = input; int i = r.length(); while( i-- ) { if ( r[i] >= QChar('A') && r[i] <= QChar('M') || r[i] >= QChar('a') && r[i] <= QChar('m') ) r[i] = (char)((int)QChar(r[i]) + 13); else if ( r[i] >= QChar('N') && r[i] <= QChar('Z') || r[i] >= QChar('n') && r[i] <= QChar('z') ) r[i] = (char)((int)QChar(r[i]) - 13); } return r;}int main( int argc, char ** argv ){ <a name="QApplication"></a><a href="qapplication.html">QApplication</a> a( argc, argv ); Rot13 r; r.<a name="resize"></a><a href="qwidget.html#8fcbbe">resize</a>( 400, 400 ); a.<a name="setMainWidget"></a><a href="qapplication.html#7ad759">setMainWidget</a>( &r ); r.<a name="setCaption"></a><a href="qwidget.html#d6a291">setCaption</a>("Qt Example - ROT13"); r.<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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -