QTreeView の特定のセル内に QComboBox を表示したいと考えています。独自のモデルを使用する必要があることはわかっています。セルに表示されている QIcons を使用すると、すべてが既に正常に機能していますが、コンボボックスで同じことを行うことができません。それが私のモデルの外観です(いくつかの不完全な擬似コード):
QVariant MyListModel::data(const QModelIndex &index, int role) const
{
...
switch(role)
{
...
case Qt::DecorationRole:
switch(index.column())
{
case eBLA:
// return QIcon(); --> compiles properly
return m_placePosCombos[index.row()]; --> compilation fails
return QComboBox(); --> compilation fails
break;
default:
QComboBox を返そうとするとすぐに、コンパイル エラーが発生します。
cannot convert from 'const QComboBox' to 'QVariant'
MyListModel は QAbstractListModel を継承しています。
愚かなアイコンの代わりに QComboBox を使用するために何をしなければならないか考えていますか?
ありがとう!