📄 mainlyqt-editor-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 - mainlyQt/editor.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>Editor Example</h1> <p> This example shows two simple text editors, with most of the program written in Qt. One editor is a Qt QMultiLineEdit, the other is an Athena Widgets text widget. They are bound together in a Qt main window.<pre>#include "<a name="qxt.h"></a><a href="qxt-h.html">qxt.h</a>"#include <<a name="qmainwindow.h"></a><a href="qmainwindow-h.html">qmainwindow.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>>#include <<a name="qmessagebox.h"></a><a href="qmessagebox-h.html">qmessagebox.h</a>>#include <<a name="qpopupmenu.h"></a><a href="qpopupmenu-h.html">qpopupmenu.h</a>>#include <<a name="qmenubar.h"></a><a href="qmenubar-h.html">qmenubar.h</a>>#include <<a name="qsplitter.h"></a><a href="qsplitter-h.html">qsplitter.h</a>>#include <X11/IntrinsicP.h>#include <X11/Shell.h>#include <X11/StringDefs.h>#include <X11/Xaw/AsciiText.h>static const char* QTEDMSG = "This is a Qt widget.\nIt is a QMultiLineEdit.";static const char* XTEDMSG = "This is an Xt widget.\nIt is an asciiTextWidgetClass.";class EncapsulatedXtWidget : public QXtWidget { Widget editor;public: EncapsulatedXtWidget(<a name="QWidget"></a><a href="qwidget.html">QWidget</a>* parent) : <a name="QXtWidget"></a><a href="qxtwidget.html">QXtWidget</a>( "shell", topLevelShellWidgetClass, parent ) { Arg args[20]; Cardinal nargs=0; XtSetArg(args[nargs], XtNeditType, XawtextEdit); nargs++; XtSetArg(args[nargs], XtNstring, XTEDMSG); nargs++; editor = XtCreateWidget( "editor", asciiTextWidgetClass, xtWidget(), args, nargs); XtRealizeWidget( editor ); XtMapWidget( editor ); } void resizeEvent( <a name="QResizeEvent"></a><a href="qresizeevent.html">QResizeEvent</a>* e ) { <a name="QXtWidget::resizeEvent"></a><a href="qxtwidget.html#71ff15">QXtWidget::resizeEvent</a>( e ); XtResizeWidget( editor, width(), height(), 2 ); }};class TwoEditors : public QMainWindow { <a name="QMultiLineEdit"></a><a href="qmultilineedit.html">QMultiLineEdit</a>* qtchild; EncapsulatedXtWidget* xtchild;public: TwoEditors() : <a name="QMainWindow"></a><a href="qmainwindow.html">QMainWindow</a>( 0, "mainWindow") { <a name="QPopupMenu"></a><a href="qpopupmenu.html">QPopupMenu</a>* file = new <a href="qpopupmenu.html">QPopupMenu</a>( this ); file-><a name="insertItem"></a><a href="qmenudata.html#deddb9">insertItem</a>("E&xit", qApp, SLOT( quit() ) ); menuBar()->insertItem( "&File", file ); statusBar(); <a name="QSplitter"></a><a href="qsplitter.html">QSplitter</a>* splitter = new <a href="qsplitter.html">QSplitter</a>( this ); splitter-><a name="setOpaqueResize"></a><a href="qsplitter.html#28096e">setOpaqueResize</a>( TRUE ); setCentralWidget( splitter ); xtchild = new EncapsulatedXtWidget( splitter ); qtchild = new <a href="qmultilineedit.html">QMultiLineEdit</a>( splitter ); qtchild-><a name="setText"></a><a href="qmultilineedit.html#3fd8c1">setText</a>(QTEDMSG); }};main(int argc, char** argv){ <a name="QXtApplication"></a><a href="qxtapplication.html">QXtApplication</a> app(argc, argv, "TwoEditors"); TwoEditors m; app.<a name="setMainWidget"></a><a href="qapplication.html#7ad759">setMainWidget</a>(&m); m.<a name="show"></a><a href="qmainwindow.html#eb53e3">show</a>(); return app.<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 + -