index.lxp@lxpwrap=x5451_252ehtm.htm
来自「GUI Programming with Python」· HTM 代码 · 共 267 行
HTM
267 行
<table border="0" cellspacing="0" cellpadding="3" width="100%"><tr><td> <div align="center" id="bldcontent"> <a href="../default.htm"><img src="../images/opendocs.png" width="63" height="76" border="0"></a> <br> <div class="symbol">Your OpenSource Publisher™</div> </div> </td></tr></table> <div align="center" class="author"> <a href="../products.lxp">Products</a> | <a href="../wheretobuy.lxp">Where to buy</a> | <a href="../bookstore.lxp">Retailers</a> | <a href="../faq.lxp">FAQ</a> | <a href="../writeforus.lxp">Write for Us.</a> | <a href="#contact">Contact Us.</a> </div> <table border="0" cellspacing="3" cellpadding="0" width="100%"><tr><td width="100%"> <div class="content"> <table border="0" cellspacing="2" cellpadding="0" width="100%"><tr><td width="100%"> <div align="center"><H4 CLASS="AUTHOR"><A NAME="AEN5">Boudewijn Rempt</A><br><a href="../../https@secure.linuxports.com/opendocs/default.htm"><img src=odpyqt125.png></a><br>ISBN: 0-97003300-4-4<br><a href="../../https@secure.linuxports.com/opendocs/default.htm">Available from bookstores everywhere or you can order it here.</a><p>You can download the source files for the book <a href="pyqtsrc.tgz">(code / eps) here.</a><hr></div> <HTML><HEAD><TITLE>Document</TITLE><METANAME="GENERATOR"CONTENT="Modular DocBook HTML Stylesheet Version 1.72"><LINKREL="HOME"TITLE="GUI Programming with Python: QT Edition"HREF="book1.htm"><LINKREL="UP"TITLE="A More Complex Framework: Multiple Documents, Multiple Views"HREF="c5288.htm"><LINKREL="PREVIOUS"TITLE="The Document Manager"HREF="x5388.htm"><LINKREL="NEXT"TITLE="View"HREF="x5458.htm"></HEAD><BODYCLASS="SECT1"BGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#840084"ALINK="#0000FF"><DIVCLASS="NAVHEADER"><TABLESUMMARY="Header navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><THCOLSPAN="3"ALIGN="center">GUI Programming with Python: QT Edition</TH></TR><TR><TDWIDTH="10%"ALIGN="left"VALIGN="bottom"><A accesskey="P" href="index.lxp@lxpwrap=x5388_252ehtm.htm">Prev</A></TD><TDWIDTH="80%"ALIGN="center"VALIGN="bottom">Chapter 15. A More Complex Framework: Multiple Documents, Multiple Views</TD><TDWIDTH="10%"ALIGN="right"VALIGN="bottom"><A accesskey="N" href="index.lxp@lxpwrap=x5458_252ehtm.htm">Next</A></TD></TR></TABLE><HRALIGN="LEFT"WIDTH="100%"></DIV><DIVCLASS="SECT1"><H1CLASS="SECT1">Document</A></H1><P>As with the simple document/view framework, the document class should know as little as possible about the actual arrangements. As you can see, little has changed compared to the simple document-view application of <A href="index.lxp@lxpwrap=c4631_252ehtm.htm">Chapter 12</A>.</P><DIVCLASS="EXAMPLE"></A><P><B>Example 15-3. The document class</B></P><PRECLASS="PROGRAMLISTING">"""mdidoc.py — document or application model.copyright: (C) 2001, Boudewijn Remptemail: boud@rempt.xs4all.nl"""from qt import *from resources import TRUE, FALSEclass MDIDoc(QObject): """ The document represents the application model. The current document keeps a 'modified' state. signals: sigDocModified (boolean) sigDocTitleChanged (string) """ def __init__(self, *args): apply(QObject.__init__, (self,)+args) self.newDocument() self._fileName=None self._title="Untitled" def setPathName(self, fileName): self._fileName=fileName self.setTitle(str(QFileInfo(fileName).fileName())) def pathName(self): return self._fileName def setTitle(self, title): self._title=title self.emit(PYSIGNAL("SigDocTitleChanged"), (self._title,)) def title(self): return self._title def newDocument(self): self.slotModify(FALSE) def open(self, fileName, format=None): self.slotModify(FALSE) self.setPathName(fileName) def slotModify(self, value=None): if value==None: self._modified=not self._modified else: self._modified = value self.emit(PYSIGNAL("sigDocModified"), (self._modified,)) def modified(self): return self._modified def close(self): pass def save(self, fileName = None, format = None): if fileName is not None and fileName <> "": self.setPathName(fileName) else: if self.pathName() == None: raise "Could not save document: no filename." self.slotModify(FALSE) </PRE></DIV></DIV><DIVCLASS="NAVFOOTER"><HRALIGN="LEFT"WIDTH="100%"><TABLESUMMARY="Footer navigation table"WIDTH="100%"BORDER="0"CELLPADDING="0"CELLSPACING="0"><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top"><A accesskey="P" href="index.lxp@lxpwrap=x5388_252ehtm.htm">Prev</A></TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><A accesskey="H" href="index.lxp@lxpwrap=book1_252ehtm">Home</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top"><A accesskey="N" href="index.lxp@lxpwrap=x5458_252ehtm.htm">Next</A></TD></TR><TR><TDWIDTH="33%"ALIGN="left"VALIGN="top">The Document Manager</TD><TDWIDTH="34%"ALIGN="center"VALIGN="top"><A accesskey="U" href="index.lxp@lxpwrap=c5288_252ehtm.htm">Up</A></TD><TDWIDTH="33%"ALIGN="right"VALIGN="top">View</TD></TR></TABLE></DIV></BODY></HTML> </td> </tr> </table> </td> </tr> </table>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?