1

Qt を使用して QTableWidget を含むウィンドウを表示する必要がある既存のアプリケーション用の C++ プラグインを作成しています。

これは、QTableWidget を作成してセルを埋める私の作業コードの抜粋です。

tableWidget->setRowCount(0);  // clear tablewidget
tableWidget->clearContents();

tableWidget->setColumnCount(5);  
tableWidget->setRowCount(2);  

QStringList header;
header << "Date" << "Owner" << "Type" << "Folder" << "Path";
tableWidget->verticalHeader()->setDefaultSectionSize(20);  
tableWidget->setHorizontalHeaderLabels(header);

tableWidget->setItem(0,0,new QTableWidgetItem(QString("dog")));
tableWidget->setItem(0,1,new QTableWidgetItem(QString("cat")));
tableWidget->setItem(0,2,new QTableWidgetItem(QString("frog")));
tableWidget->setItem(1,0,new QTableWidgetItem(QString("shark")));

tableWidget->item(0,0)->setTextAlignment(Qt::AlignLeft);
tableWidget->item(0,1)->setTextAlignment(Qt::AlignLeft);
tableWidget->item(0,2)->setTextAlignment(Qt::AlignLeft);

tableWidget->resizeColumnsToContents();

連続する各列内のデータが前の列よりもさらに右に移動することを除いて、期待どおりに機能します。これは、列のサイズを変更し、右側の列のデータがさらに右に「スライド」して表示されると、誇張される可能性があります。

効果の 2 つのスクリーンショットを次に示します (列のサイズ変更の前後)。「cat」と「frog」の文字が通常より右に移動している様子がわかります。

ここに画像の説明を入力

ここに画像の説明を入力

私は何を間違っていますか?各セルのテキストを各列の左側に揃えたい。

4

1 に答える 1