Ich möchte ein Child-Container-Layout erstellen, das 2 Widgets enthält. Diese zwei Widgets sollten direkt nebeneinander platziert werden, aber mein derzeitiges Setup hat immer noch einige Abstände dazwischen.Wie entferne ich den Abstand innerhalb eines GridLayout (QT)?
Ich habe den Abstand bereits auf 0 setSpacing(0)
eingestellt. Und setContentsMargins(0,0,0,0)
hilft nicht.
Ich verwende PyQt5, aber es sollte kein Problem sein, C++ - Code zu konvertieren.
Wie man auf dem Bild sehen kann, gibt es noch eine kleine Lücke:
(links: LineEdit - Recht: Pushbutton)
import PyQt5.QtCore as qc
import PyQt5.QtGui as qg
import PyQt5.QtWidgets as qw
import sys
class Window(qw.QWidget):
def __init__(self):
qw.QWidget.__init__(self)
self.initUI()
def initUI(self):
gridLayout = qw.QGridLayout()
height = 20
self.label1 = qw.QLabel("Input:")
self.label1.setFixedHeight(height)
gridLayout.addWidget(self.label1, 0, 0)
# Child Container
childGridLayout = qw.QGridLayout()
childGridLayout.setContentsMargins(0,0,0,0)
childGridLayout.setHorizontalSpacing(0)
self.lineEdit1 = qw.QLineEdit()
self.lineEdit1.setFixedSize(25, height)
childGridLayout.addWidget(self.lineEdit1, 0, 0)
self.pushButton1 = qw.QPushButton("T")
self.pushButton1.setFixedSize(20, height)
childGridLayout.addWidget(self.pushButton1, 0, 1)
# -----------------
gridLayout.addItem(childGridLayout, 0,1)
self.setLayout(gridLayout)
if __name__ == '__main__':
app = qw.QApplication(sys.argv)
window = Window()
window.show()
sys.exit(app.exec_())
Sie sollen Ihren Code schreiben und ein minimales nachprüfbares Beispiel bieten: http://stackoverflow.com/help/mcve –
Okay, danke, ich habe einen Beispiel-Code hinzugefügt. – Sens4