21

Qt コンボ ボックスの個々の項目を無効にする標準的な方法が見つかりません。Qtでこれを行うための機能がありませんか?

4

4 に答える 4

5

ここから撮影:

// Get the index of the value to disable
QModelIndex index = ui.comboBox->model()->index(1, 0); 

// This is the effective 'disable' flag
QVariant v(0);

// the magic
ui.comboBox->model()->setData(index, v, Qt::UserRole - 1);

再度有効にするには:

QVariant v(1 | 32);

flags使用されるモデルは、単語を to にマップしますQt::UserRole - 1。これが、このコードが機能する理由です。これは、任意のモデルで機能する一般的なソリューションではありません。

于 2012-07-11T19:19:36.137 に答える