0

このようなアイテムのリストが必要です。

qtdesignerで作成されたサンプルdesigna

この場合、deletePushButtonをクリックすると、行全体が削除されます。

このリストは動的に作成されるため、多数の水平レイアウトを作成し、コードで垂直レイアウトに追加しています。私の問題は、水平レイアウトにある3つのアイテムをどのようにマップするかです。そして、私はこの設計のためのより良いアプローチが何であるかわかりません。

Win7でQt4.8.1を使用しています。

4

1 に答える 1

1

新しいウィジェットを作成し、その上に3つのコントロールを配置します。

class MyWidget : public QWidget
{
    Q_OBJECT
public:
    MyWidget(QWidget *parent = 0);
private:
    QLabel *label;
    QLineEdit *edit;
    QPushButton *deleteButton;
};

MyWidget(QWidget *parent) :
   QWidget(parent)
{
    label = new QLabel("text");
    edit = new QLineEdit;
    deleteButton = new QPushButton;

    QHBoxLayout *mainLayout = new QHBoxLayout;
    mainLayout->addWidget(label);
    mainLayout->addWidget(edit);
    mainLayout->addWidget(deleteButton);

    setLayout(mainLayout);

    connect(deleteButton, SIGNAL(clicked()), this, SLOT(deleteLater()));
}
于 2013-02-24T15:52:34.497 に答える