Sono confuso perché un widget QPlainTextEdit non verrà ridimensionato verticalmente se aggiunto a un QFormLayout . Nel codice sottostante il campo di testo viene ridimensionato correttamente in orizzontale, ma non si scala verticalmente.Qt modulo non espandibile qplaintextedit verticalmente
Qualcuno può spiegare questo comportamento e offrire una soluzione? Ho provato tutti i trucchi che conosco inutilmente.
from PyQt4 import QtGui
class Diag(QtGui.QDialog):
def __init__(self, parent, *args, **kwargs):
QtGui.QDialog.__init__(self, parent)
layout = QtGui.QFormLayout(self)
widg = QtGui.QPlainTextEdit(self)
layout.addRow('Entry', widg)
if __name__ == '__main__': #pragma: no cover
app = QtGui.QApplication([])
window = Diag(None)
window.show()
app.exec_()
Ecco un esempio del widget QPlainTextEdit non il ridimensionamento verticale: QPlainTextEdit added to QFormLayout but not resizing vertically http://s9.postimage.org/ejvmp1wtr/qplaintextedit_in_qformlayout_not_resize.jpg
Questo è il Windows 7 utilizzando PyQt 4.5.2 e Python 2.6 a 32 bit.
Grazie.
ottengo il comportamento opposto esatto sia su Linux e WinXP. La modifica del testo viene ridimensionata verticalmente per riempire lo spazio indipendentemente dalle impostazioni scelte (ad esempio [setFieldGrowthPolicy()] (http://doc.qt.nokia.com/4.8-snapshot/qformlayout.html#fieldGrowthPolicy-prop), [ expandingDirections()] (http://doc.qt.nokia.com/4.8-snapshot/qlayoutitem.html#expandingDirections), ecc.) – ekhumoro
Huh, quale versione di Qt stai usando ekhumoro? Ho aggiunto un'immagine di esempio al mio post che mostra il risultato che ottengo dal mio codice, e solo per essere sicuro di capire che stai dicendo che vedi il campo che si espande per riempire il widget? –
Una foto vale più di mille parole! Sembra che non ho capito bene il tuo problema correttamente. Si prega di vedere la mia soluzione qui sotto. – ekhumoro