t2.html

来自「qtopiaphone英文帮助,用于初学者和开发人员,初学者可以用来学习,开发人」· HTML 代码 · 共 121 行

HTML
121
字号
<!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 Tutorial - Chapter 2: Calling it Quits</title></head><body bgcolor="#ffffff"><p><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><p><h1 align=center>Chapter 2: Calling it Quits</h1><br clear="all"><p><center><img src="t2.png" alt="Screenshot of tutorial two"></center><p>Having created a window in <a href="t1.html">chapter one,</a> we willnow go on to make the application quit properly when the user tells it to.<p>We will also use a font that is more exciting than the default one. <pre>/******************************************************************** Qt tutorial 2******************************************************************/#include &lt;<a href="qapplication-h.html">qapplication.h</a>&gt;#include &lt;<a href="qpushbutton-h.html">qpushbutton.h</a>&gt;#include &lt;<a href="qfont-h.html">qfont.h</a>&gt;int main( int argc, char **argv ){    <a href="qapplication.html">QApplication</a> a( argc, argv );    <a href="qpushbutton.html">QPushButton</a> quit( "Quit", 0 );    quit.<a href="qpushbutton.html#13fb8e">resize</a>( 75, 30 );    quit.<a href="qwidget.html#090d60">setFont</a>( <a href="qfont.html">QFont</a>( "Times", 18, QFont::Bold ) );    <a href="qobject.html#7f8e37">QObject::connect</a>( &amp;quit, SIGNAL(clicked()), &amp;a, SLOT(quit()) );    a.<a href="qapplication.html#7ad759">setMainWidget</a>( &amp;quit );    quit.<a href="qwidget.html#200ee5">show</a>();    return a.<a href="qapplication.html#84c7bf">exec</a>();}</pre><p><h2>Line by Line Walk-Through</h2>  <pre>    #include &lt;<a href="qfont-h.html">qfont.h</a>&gt;</pre><p>Since this program uses QFont, it needs to include qfont.h.  Qt's fontabstraction is rather different from the horror provided by X, andloading and using fonts has been highly optimized.  <pre>        <a href="qpushbutton.html">QPushButton</a> quit( "Quit", 0 );</pre><p>This time, the button says "Quit" and that's exactly what the programwill do when the user clicks the button.  This is not a coincidence.We still pass 0 as the parent, since the button is a top-level window. <pre>        quit.<a href="qpushbutton.html#13fb8e">resize</a>( 75, 30 );</pre><p>We've chosen another size for the button since the text is a bitshorter than "Hello world!".  We could also have used <a href="qfontmetrics.html">QFontMetrics</a>to set right size. <pre>        quit.<a href="qwidget.html#090d60">setFont</a>( <a href="qfont.html">QFont</a>( "Times", 18, QFont::Bold ) );</pre><p>Here we choose a new font for the button, an 18-point bold font fromthe Times family.  Note that we create the font on the spot.<p>It is also possible to change the default font (using <a href="qapplication.html#3d926a">QApplication::setFont())</a> for the whole application. <pre>        <a href="qobject.html#7f8e37">QObject::connect</a>( &amp;quit, SIGNAL(clicked()), &amp;a, SLOT(quit()) );</pre><p>connect() is perhaps <em>the</em> most central feature of Qt.Note that connect() is a static function in QObject.  Do not confuse itwith the connect() function in the socket library.<p>This line establishes a one-way connection between two Qt objects (objectsthat inherit QObject, directly or indirectly).  Every Qt object can haveboth <code>signals</code> (to send messages) and <code>slots</code> (to receive messages).  Allwidgets are Qt objects.  They inherit QWidget which in turn inheritsQObject.<p>Here, the <em>clicked()</em> signal of <em>quit</em> is connected to the <em>quit()</em> slot of <em>a,</em> so that when the button is clicked, theapplication quits.<p>The <a href="signalsandslots.html">Signals and Slots</a> documentationdescribes this topic in detail.<p><h2>Behavior</h2><p>When you run this program, you will see an even smaller window than inchapter one, filled with an even smaller button.<p><h2>Exercises</h2><p>Try to resize the window.  Press the button.  Oops!  That connect()would seem to make some difference :)<p>Are there any other signals in QPushButton you can connect to quit?Hint: The QPushButton inherits most of its behavior from QButton.<p>You may now go on to <a href="t3.html">chapter three.</a><p>[<a href="t1.html">Previous tutorial</a>][<a href="t3.html">Next tutorial</a>][<a href="tutorial.html">Main tutorial page</a>]<p><address><hr><div align="center"><table width="100%" cellspacing="0" border="0"><tr><td>Copyright 

⌨️ 快捷键说明

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