擅长:python、mysql、java
<p>问题出在<code>mainwind.py</code>文件中。</p>
<p>尝试使用以下方法打开对话框:</p>
<pre><code> def buttonclicked(self):
Dialog = QtGui.QDialog()
u = settings.SettingsWindow()
u.setupUi(Dialog)
Dialog.exec_()
</code></pre>
<p>文本不显示的原因是您正在创建两个<em>对话框。第二个(名为<code>u</code>)调用了<code>setText()</code>,但随后被丢弃而没有显示出来。</p>
<p>你的方法应该是这样的:</p>
<pre><code> def buttonclicked(self):
dialog = settings.SettingsWindow()
dialog.exec_()
</code></pre>
<p>所有的<code>SettingsWindow</code>对话框的设置代码已经在它的<code>__init__</code>方法中了,所以您只需要创建它的一个实例。</p>
<p>附言:</p>
<p>在<code>MainWindow.__init__</code>中有<code>Ui_MainWindow.__init__(self)</code>,在<code>SettingsWindow.__init__</code>中有<code>Ui_Dialog.__init__(self)</code>。这些行没有任何用处,因为<code>Ui_*</code>类只是<code>object</code>的简单子类。所以这两条线可以被移除。</p>