menu-example.html

来自「QT 下载资料仅供参考」· HTML 代码 · 共 427 行 · 第 1/2 页

HTML
427
字号
<a name="f500"></a>MenuExample::MenuExample( <a href="qwidget.html">QWidget</a> *parent, const char *name )    : <a href="qwidget.html">QWidget</a>( parent, name ){    <a href="qpixmap.html">QPixmap</a> p1( p1_xpm );    <a href="qpixmap.html">QPixmap</a> p2( p2_xpm );    <a href="qpixmap.html">QPixmap</a> p3( p3_xpm );    <a href="qpopupmenu.html">QPopupMenu</a> *print = new <a href="qpopupmenu.html">QPopupMenu</a>( this );    <a href="qapplication.html#Q_CHECK_PTR">Q_CHECK_PTR</a>( print );<a name="x1869"></a>    print-&gt;<a href="qpopupmenu.html#insertTearOffHandle">insertTearOffHandle</a>();<a name="x1860"></a>    print-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Print to printer", this, SLOT(printer()) );    print-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "Print to &amp;file", this, SLOT(file()) );    print-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "Print to fa&amp;x", this, SLOT(fax()) );<a name="x1861"></a>    print-&gt;<a href="qmenudata.html#insertSeparator">insertSeparator</a>();    print-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "Printer &amp;Setup", this, SLOT(printerSetup()) );    <a href="qpopupmenu.html">QPopupMenu</a> *file = new <a href="qpopupmenu.html">QPopupMenu</a>( this );    <a href="qapplication.html#Q_CHECK_PTR">Q_CHECK_PTR</a>( file );    file-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( p1, "&amp;Open",  this, SLOT(open()), CTRL+Key_O );    file-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( p2, "&amp;New", this, SLOT(news()), CTRL+Key_N );    file-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( p3, "&amp;Save", this, SLOT(save()), CTRL+Key_S );    file-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Close", this, SLOT(closeDoc()), CTRL+Key_W );    file-&gt;<a href="qmenudata.html#insertSeparator">insertSeparator</a>();    file-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Print", print, CTRL+Key_P );    file-&gt;<a href="qmenudata.html#insertSeparator">insertSeparator</a>();    file-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "E&amp;xit",  qApp, SLOT(<a href="qapplication.html#quit">quit</a>()), CTRL+Key_Q );    <a href="qpopupmenu.html">QPopupMenu</a> *edit = new <a href="qpopupmenu.html">QPopupMenu</a>( this );    <a href="qapplication.html#Q_CHECK_PTR">Q_CHECK_PTR</a>( edit );    int undoID = edit-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Undo", this, SLOT(undo()) );    int redoID = edit-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Redo", this, SLOT(redo()) );<a name="x1864"></a>    edit-&gt;<a href="qmenudata.html#setItemEnabled">setItemEnabled</a>( undoID, FALSE );    edit-&gt;<a href="qmenudata.html#setItemEnabled">setItemEnabled</a>( redoID, FALSE );    <a href="qpopupmenu.html">QPopupMenu</a>* options = new <a href="qpopupmenu.html">QPopupMenu</a>( this );    <a href="qapplication.html#Q_CHECK_PTR">Q_CHECK_PTR</a>( options );    options-&gt;<a href="qpopupmenu.html#insertTearOffHandle">insertTearOffHandle</a>();    options-&gt;<a href="qwidget.html#setCaption">setCaption</a>("Options");    options-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Normal Font", this, SLOT(normal()) );    options-&gt;<a href="qmenudata.html#insertSeparator">insertSeparator</a>();<a name="x1872"></a>    options-&gt;<a href="qwidget.html#polish">polish</a>(); // adjust system settings<a name="x1871"></a>    <a href="qfont.html">QFont</a> f = options-&gt;<a href="qwidget.html#font">font</a>();<a name="x1852"></a>    f.<a href="qfont.html#setBold">setBold</a>( TRUE );    boldID = options-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( new MyMenuItem( "Bold", f ) );<a name="x1862"></a>    options-&gt;<a href="qmenudata.html#setAccel">setAccel</a>( CTRL+Key_B, boldID );<a name="x1859"></a>    options-&gt;<a href="qmenudata.html#connectItem">connectItem</a>( boldID, this, SLOT(bold()) );    f = <a href="qwidget.html#font">font</a>();<a name="x1853"></a>    f.<a href="qfont.html#setUnderline">setUnderline</a>( TRUE );    underlineID = options-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( new MyMenuItem( "Underline", f ) );    options-&gt;<a href="qmenudata.html#setAccel">setAccel</a>( CTRL+Key_U, underlineID );    options-&gt;<a href="qmenudata.html#connectItem">connectItem</a>( underlineID, this, SLOT(underline()) );    isBold = FALSE;    isUnderline = FALSE;<a name="x1870"></a>    options-&gt;<a href="qpopupmenu.html#setCheckable">setCheckable</a>( TRUE );    <a href="qpopupmenu.html">QPopupMenu</a> *help = new <a href="qpopupmenu.html">QPopupMenu</a>( this );    <a href="qapplication.html#Q_CHECK_PTR">Q_CHECK_PTR</a>( help );    help-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;About", this, SLOT(about()), CTRL+Key_H );    help-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "About &amp;Qt", this, SLOT(aboutQt()) );    menu = new <a href="qmenubar.html">QMenuBar</a>( this );    <a href="qapplication.html#Q_CHECK_PTR">Q_CHECK_PTR</a>( menu );    menu-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;File", file );    menu-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Edit", edit );    menu-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Options", options );    menu-&gt;<a href="qmenudata.html#insertSeparator">insertSeparator</a>();    menu-&gt;<a href="qmenudata.html#insertItem">insertItem</a>( "&amp;Help", help );<a name="x1858"></a>    menu-&gt;<a href="qmenubar.html#setSeparator">setSeparator</a>( QMenuBar::InWindowsStyle );    label = new <a href="qlabel.html">QLabel</a>( this );    <a href="qapplication.html#Q_CHECK_PTR">Q_CHECK_PTR</a>( label );<a name="x1875"></a>    label-&gt;<a href="qwidget.html#setGeometry">setGeometry</a>( 20, rect().center().y()-20, width()-40, 40 );    label-&gt;<a href="qframe.html#setFrameStyle">setFrameStyle</a>( QFrame::Box | QFrame::Raised );<a name="x1855"></a>    label-&gt;<a href="qframe.html#setLineWidth">setLineWidth</a>( 1 );    label-&gt;<a href="qlabel.html#setAlignment">setAlignment</a>( AlignCenter );    <a href="qobject.html#connect">connect</a>( this,  SIGNAL(explain(const <a href="qstring.html">QString</a>&amp;)),             label, SLOT(<a href="qlabel.html#setText">setText</a>(const <a href="qstring.html">QString</a>&amp;)) );    <a href="qwidget.html#setMinimumSize">setMinimumSize</a>( 100, 80 );}void <a name="f501"></a>MenuExample::open(){    emit explain( "File/Open selected" );}void <a name="f502"></a>MenuExample::news(){    emit explain( "File/New selected" );}void <a name="f503"></a>MenuExample::save(){    emit explain( "File/Save selected" );}void <a name="f504"></a>MenuExample::closeDoc(){    emit explain( "File/Close selected" );}void <a name="f505"></a>MenuExample::undo(){    emit explain( "Edit/Undo selected" );}void <a name="f506"></a>MenuExample::redo(){    emit explain( "Edit/Redo selected" );}void <a name="f507"></a>MenuExample::normal(){    isBold = FALSE;    isUnderline = FALSE;<a name="x1863"></a>    menu-&gt;<a href="qmenudata.html#setItemChecked">setItemChecked</a>( boldID, isBold );    menu-&gt;<a href="qmenudata.html#setItemChecked">setItemChecked</a>( underlineID, isUnderline );    emit explain( "Options/Normal selected" );}void <a name="f508"></a>MenuExample::bold(){    isBold = !isBold;    menu-&gt;<a href="qmenudata.html#setItemChecked">setItemChecked</a>( boldID, isBold );    emit explain( "Options/Bold selected" );}void <a name="f509"></a>MenuExample::underline(){    isUnderline = !isUnderline;    menu-&gt;<a href="qmenudata.html#setItemChecked">setItemChecked</a>( underlineID, isUnderline );    emit explain( "Options/Underline selected" );}void <a name="f510"></a>MenuExample::about(){<a name="x1865"></a>    QMessageBox::<a href="qmessagebox.html#about">about</a>( this, "Qt Menu Example",                        "This example demonstrates simple use of Qt menus.\n"                        "You can cut and paste lines from it to your own\n"                        "programs." );}void <a name="f511"></a>MenuExample::aboutQt(){<a name="x1866"></a>    QMessageBox::<a href="qmessagebox.html#aboutQt">aboutQt</a>( this, "Qt Menu Example" );}void <a name="f512"></a>MenuExample::printer(){    emit explain( "File/Printer/Print selected" );}void <a name="f513"></a>MenuExample::file(){    emit explain( "File/Printer/Print To File selected" );}void <a name="f514"></a>MenuExample::fax(){    emit explain( "File/Printer/Print To Fax selected" );}void <a name="f515"></a>MenuExample::printerSetup(){    emit explain( "File/Printer/Printer Setup selected" );}<a name="x1873"></a>void MenuExample::<a href="qwidget.html#resizeEvent">resizeEvent</a>( <a href="qresizeevent.html">QResizeEvent</a> * ){    label-&gt;<a href="qwidget.html#setGeometry">setGeometry</a>( 20, rect().center().y()-20, width()-40, 40 );}int main( int argc, char ** argv ){    <a href="qapplication.html">QApplication</a> a( argc, argv );    MenuExample m;    m.<a href="qwidget.html#setCaption">setCaption</a>("Qt Examples - Menus");    a.<a href="qapplication.html#setMainWidget">setMainWidget</a>( &amp;m );    m.<a href="qwidget.html#show">show</a>();    return a.<a href="qapplication.html#exec">exec</a>();}</pre><p>See also <a href="examples.html">Examples</a>.<!-- eof --><p><address><hr><div align=center><table width=100% cellspacing=0 border=0><tr><td>Copyright &copy; 2002 <a href="http://www.trolltech.com">Trolltech</a><td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a><td align=right><div align=right>Qt version 3.0.5</div></table></div></address></body></html>

⌨️ 快捷键说明

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