0

我有一个 5 列的表格视图(模型)。在其中一个中,我想在组合框中显示 2 个选项。选项是预先确定的,所以我认为没有必要使用委托。我错了吗?

for (int state=0; state <3; state++)
{
    QStandardItem item = new QStandardItem();
    item.setEditable( false );
    item.setTextAlignment( Qt.AlignmentFlag.AlignCenter );

    switch (state)
    {
        case 0: 
            item.setText( "Column 0" );
            item.setEditable( true );
            break;
        case 1:
            item.setText( "Column 1" );
            item.setEditable( true );
            break;
        case 2:
            //create a new combobox
            break;
    }
}
4

1 回答 1

0

我认为您必须(或至少应该)使用委托。委托是将视图(tableview 基本上是一个布局并通过模型+委托检索其内容)与模型连接的对象。该模型不(它不应该)对其内容的呈现方式负责。这就是委托的作用——当视图要求它这样做时,它会将数据(模型)“转换”为可呈现的实体。模型不能(也不应该)为其数据声明视图。

于 2012-05-22T20:03:53.980 回答