Search code examples
qtqt4pyqtqtextedit

QTextEdit is too big?


I can't figure out why my QTextEdit is so big despite my having inserted it without stretch. I just want it to be one line.

    self.widget = QWidget()
    vbox = QVBoxLayout()
    vbox.addWidget(self.ppd_widget, 1)  # this widget is big, and I'm pretty sure it stretches. 

    hbox = QHBoxLayout()
    vbox.addLayout(hbox, 0)

    self.n_button = QPushButton("&New training example")
    self.connect(self.n_button, SIGNAL('clicked()'), self.on_new_example)
    self.i_button = QPushButton("&Infer")
    self.connect(self.i_button, SIGNAL('clicked()'), self.on_infer)
    self.t_button = QPushButton("&Train")
    self.connect(self.t_button, SIGNAL('clicked()'), self.on_train)

    hbox.addWidget(QLabel("Training example: "), 0)
    self.example_number = QTextEdit()
    self.example_number.setLineWrapMode(0)#QPlainTextEdit.NoWrap)
    hbox.addWidget(self.example_number, 0)

    hbox.addWidget(self.n_button, 0)
    hbox.addWidget(self.i_button, 0)
    hbox.addWidget(self.t_button, 0)
    hbox.addSpacing(1)

Solution

  • If you want one line only, you should use QLineEdit. Your buttons have Preferred size policy, which keeps them at a fixes size. The QTextEdit probably has MinimumExpanding or Expanding, and thus takes up the rest of the available space.