2

私のアプリケーションでは、行をクリックするとデフォルトの青い行がマークされますが、この青い色の横に、ユーザーがクリックした信号に依存しない関数を介して行を別の色でペイントするものがあります。行インデックスを渡すと、行がx色でペイントされます。

4

2 に答える 2

0

アイテムロールを持つデリゲート関数を作成します。各ツリーアイテムにアイテムの役割を設定します。ツリーデリゲートのペイントイベントのアイテムにアクセスし、それに応じて行をペイントします。

于 2010-10-21T05:08:08.563 に答える
0

QStandardItem では、背景の役割を希望の色に設定できます。

void customSelect(const QModelIndex &index)
{
  if( !index.isValid() )
     return;


  QStandardItemModel* myModel = dynamic_cast<QStandardItemModel*> ( index.model() );
  if( !myModel )
    return;

  int row = index.row();
  for( int col = 0 , colCount = myModel.columnCount(); col < colCount ; ++i)
  {
    QStandardItem *item = myModel.item( row, col );
    item->setData(Qt::blue, Qt::BackgroundColorRole);
  }

}
于 2016-07-12T12:46:08.100 に答える