2017-09-27 109 views
0

我的经验:在PyQt5围绕一个QTextEdit

我相信在一般使用python,但我是新来PyQt5。

什么我的工作:

我目前使用PyQt5为Python 3.6建立一个文本编辑器,它拥有所有的基本功能,一个普通的文本编辑器将不得不例如,保存文件,打开文件,改变字体等

我的问题

目前,我建立了一个基本的布局含有各种按钮的菜单栏我的计划,我现在是在加入了“文字编辑”框入点程序,但它的确如此没有出现在UI的中心:

The textbox

文本框也相对较小相比,整体窗口的大小,所以目前我离开我的小,左上角对齐文本框。我怎样才能将这个文本框居中并使其跨越整个窗口。

我的主类:

class App(QMainWindow): 
    def __init__(self): 
     super().__init__() 
     self.title = 'Text Editor' 
     self.left = 10 
     self.top = 10 
     self.width = 1080 
     self.height = 920 
     self.text = QTextEdit(self) 

    self.initUI() 

回答

1

您可以添加的QTextEdit作为QMainWindow中的核心部件,如下图所示:

class App(QMainWindow): 
    def __init__(self): 
     super().__init__() 
     self.title = 'Text Editor' 
     self.left = 10 
     self.top = 10 
     self.width = 1080 
     self.height = 920 

     self.text = QTextEdit(self) 
     self.setCentralWidget(self.text) 

截图:

enter image description here

或者添加它insi德通过布局中央小窗口:

class App(QMainWindow): 
    def __init__(self): 
     super().__init__() 
     self.title = 'Text Editor' 
     self.left = 10 
     self.top = 10 
     self.width = 1080 
     self.height = 920 

     self.widget = QWidget(self) 

     self.text = QTextEdit(self.widget) 
     self.widget.setLayout(QVBoxLayout()) 
     self.widget.layout().addWidget(self.text) 

     self.setCentralWidget(self.widget) 

截图:

enter image description here