2009-11-17 33 views
0

我試圖用Qt設計器和Pyqt4的一個簡單的例子,當我在Qt設計器(控制+ R)中預覽UI看起來不錯,但是當我嘗試執行生成的UI代碼時,佈局不能正常工作,而不是自動化小部件到最大限度,它們太小以至於無法使用。Qt設計師如何使Pyqt4自動化佈局?

如果我使用固定尺寸,效果很好。

用來加載窗口的代碼是:

import sys 

from PyQt4 import QtCore, QtGui 

from table import Ui_table 

class Main(QtGui.QMainWindow): 
    def __init__(self): 
     QtGui.QMainWindow.__init__(self) 

     self.ui = Ui_table() 
     self.ui.setupUi(self) 

def main(): 
    app = QtGui.QApplication(sys.argv) 
    window=Main() 
    window.show() 

    sys.exit(app.exec_()) 

if __name__ == "__main__": 
    main() 

而且Qt設計的XML文件來生成一個簡單的插件的UI代碼最大化:

<?xml version="1.0" encoding="UTF-8"?> 
<ui version="4.0"> 
<class>table</class> 
<widget class="QWidget" name="table"> 
    <property name="geometry"> 
    <rect> 
    <x>0</x> 
    <y>0</y> 
    <width>457</width> 
    <height>422</height> 
    </rect> 
    </property> 
    <property name="windowTitle"> 
    <string>Form</string> 
    </property> 
    <layout class="QVBoxLayout" name="verticalLayout"> 
    <item> 
    <widget class="QTreeWidget" name="list"> 
    <column> 
     <property name="text"> 
     <string>name</string> 
     </property> 
    </column> 
    </widget> 
    </item> 
    </layout> 
</widget> 
<resources/> 
<connections/> 
</ui> 

有什麼建議?

操作系統:Windows XP
的Python:Python的2.6.3
PyQt4的:4.6.1

回答

0

這是一個長鏡頭,但沒有使用的QMainWindow和XML UI-descripting的代碼定義一個QWidget 。我不確定這是否是問題,但它對我來說並不完全正確。