qt - 如何以编程方式简单地删除 QFormLayout 中的行

标签 qt layout pyqt

我有这个代码:

myEdit = QLineEdit()
myQFormLayout.addRow("myLabelText", myEdit)

现在我必须通过引用 myEdit 删除该行只要:
myQformLayout.removeRow(myEdit)

但是没有 API。我可以用 .takeAt() ,但是我怎么能得到这个论点呢?如何找到标签索引,或 myEdit 的索引?

最佳答案

您可以只安排小部件及其标签(如果有的话)进行删除,然后让表单相应地自行调整。可以使用 labelForField 检索小部件的标签。 .

Python Qt 代码:

    label = myQformLayout.labelForField(myEdit)
    if label is not None:
        label.deleteLater()
    myEdit.deleteLater()

关于qt - 如何以编程方式简单地删除 QFormLayout 中的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13839952/

相关文章:

python - 在 PyQt5 的 TableView 中显示 pandas DataFrame,其中列设置为索引

QtQuick QML 如何在悬停时突出显示 ListView 中的项目?

Android:在 MyAdapter::getView 中计算 View 大小

css - 理解没有 float 的 CSS 盒子布局

Java 网格布局

python - Pyqt5:像素图颜色问题

python - 加载网页

java - QT Jambi - QLCD号码实时更新

qt - 为什么 QWebSocketServer 在客户端连接尝试时发送 TCP [FIN] 消息

python - PyInstaller 打包的应用程序在控制台模式下工作正常,在窗口模式下崩溃