📄 splitter-splitter-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 - splitter/splitter.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>Splitter</h1><br clear="all"> This example shows how to use Splitters. Splitters can contain multiple child items and using the Splitter the user can decide herself/himself, how much space each child should get. <hr> Implementation:<pre>/****************************************************************************** $Id: qt/examples/splitter/splitter.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 <<a name="qlabel.h"></a><a href="qlabel-h.html">qlabel.h</a>>#include <<a name="qsplitter.h"></a><a href="qsplitter-h.html">qsplitter.h</a>>#include <<a name="qmultilineedit.h"></a><a href="qmultilineedit-h.html">qmultilineedit.h</a>>#include <<a name="qpainter.h"></a><a href="qpainter-h.html">qpainter.h</a>>class Test : public QWidget {public: Test(<a name="QWidget"></a><a href="qwidget.html">QWidget</a>* parent=0, const char* name=0, int f=0); void paintEvent(<a name="QPaintEvent"></a><a href="qpaintevent.html">QPaintEvent</a>* e);private:};Test::Test(<a href="qwidget.html">QWidget</a>* parent, const char* name, int f) : <a href="qwidget.html">QWidget</a>(parent, name, f){}void <a name="24"></a>Test::paintEvent(<a href="qpaintevent.html">QPaintEvent</a>* e){ <a name="QPainter"></a><a href="qpainter.html">QPainter</a> p(this); p.<a name="setClipRect"></a><a href="qpainter.html#898839">setClipRect</a>(e-><a name="rect"></a><a href="qpaintevent.html#2d6e18">rect</a>()); const int d = 1000; //large number int x1 = 0; int x2 = width()-1; int y1 = 0; int y2 = height()-1; int x = (x1+x2)/2; p.<a name="drawLine"></a><a href="qpainter.html#e3a489">drawLine</a>( x, y1, x+d, y1+d ); p.<a href="qpainter.html#e3a489">drawLine</a>( x, y1, x-d, y1+d ); p.<a href="qpainter.html#e3a489">drawLine</a>( x, y2, x+d, y2-d ); p.<a href="qpainter.html#e3a489">drawLine</a>( x, y2, x-d, y2-d ); int y = (y1+y2)/2; p.<a href="qpainter.html#e3a489">drawLine</a>( x1, y, x1+d, y+d ); p.<a href="qpainter.html#e3a489">drawLine</a>( x1, y, x1+d, y-d ); p.<a href="qpainter.html#e3a489">drawLine</a>( x2, y, x2-d, y+d ); p.<a href="qpainter.html#e3a489">drawLine</a>( x2, y, x2-d, y-d );}int main( int argc, char ** argv ){ <a name="QApplication"></a><a href="qapplication.html">QApplication</a> a( argc, argv ); <a name="QSplitter"></a><a href="qsplitter.html">QSplitter</a> *s1 = new <a href="qsplitter.html">QSplitter</a>( QSplitter::Vertical, 0 , "main" ); <a href="qsplitter.html">QSplitter</a> *s2 = new <a href="qsplitter.html">QSplitter</a>( QSplitter::Horizontal, s1, "top" ); Test *t1 = new Test( s2 ); t1-><a name="setBackgroundColor"></a><a href="qwidget.html#c09181">setBackgroundColor</a>( Qt::blue.light( 180 ) ); t1-><a name="setMinimumSize"></a><a href="qwidget.html#c0b5fb">setMinimumSize</a>( 50, 0 ); Test *t2 = new Test( s2 ); t2-><a href="qwidget.html#c09181">setBackgroundColor</a>( Qt::green.light( 180 ) ); s2-><a name="setResizeMode"></a><a href="qsplitter.html#33bf83">setResizeMode</a>( t2, QSplitter::KeepSize ); s2-><a name="moveToFirst"></a><a href="qsplitter.html#14b4ef">moveToFirst</a>( t2 ); <a href="qsplitter.html">QSplitter</a> *s3 = new <a href="qsplitter.html">QSplitter</a>( QSplitter::Horizontal, s1, "bottom" ); Test *t3 = new Test( s3 ); t3-><a href="qwidget.html#c09181">setBackgroundColor</a>( Qt::red ); Test *t4 = new Test( s3 ); t4-><a href="qwidget.html#c09181">setBackgroundColor</a>( Qt::white ); Test *t5 = new Test( s3 ); t5-><a name="setMaximumHeight"></a><a href="qwidget.html#4e5337">setMaximumHeight</a>( 250 ); t5-><a href="qwidget.html#c0b5fb">setMinimumSize</a>( 80, 50 ); t5-><a href="qwidget.html#c09181">setBackgroundColor</a>( Qt::yellow );#ifdef _WS_QWS_ // Qt/Embedded XOR drawing not yet implemented. s1->setOpaqueResize( TRUE );#endif s2-><a name="setOpaqueResize"></a><a href="qsplitter.html#28096e">setOpaqueResize</a>( TRUE ); s3-><a href="qsplitter.html#28096e">setOpaqueResize</a>( TRUE ); a.<a name="setMainWidget"></a><a href="qapplication.html#7ad759">setMainWidget</a>( s1 ); s1-><a name="setCaption"></a><a href="qwidget.html#d6a291">setCaption</a>("Qt Example - Splitters"); s1-><a name="show"></a><a href="qwidget.html#200ee5">show</a>(); int result = a.<a name="exec"></a><a href="qapplication.html#84c7bf">exec</a>(); delete s1; return result;}</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 + -