Qt入门-表格类QTableWidget

表格是GUI中常用的控件,在Qt中,常用的表格类是QTableWidget。

    示例:

  1. QTableWidget *table = new QTableWidget( 4, 2); //新建一4行2列的表格
  2. //设置表格行标题
  3. QStringList headerLabels;
  4. headerLabels << "C1" << "C2";
  5. table->setHorizontalHeaderLabels(headerLabels);
  6. //设置表格行标题的对齐方式
  7. table->horizontalHeader()->setDefaultAlignment(Qt::AlignLeft);
  8. //设置行表题
  9. QStringList rowLabels;
  10. rowLabels << "Line1" << "Line2" << "Line3" << "Line4";
  11. table->setVerticalHeaderLabels(rowLabels);
  12. //设置每一行的高度
  13. for( int i = 0; i < 4; i++)
  14. table->setRowHeight(i, 22);
  15. //自动调整最后一列的宽度使它和表格的右边界对齐
  16. table->horizontalHeader()->setStretchLastSection( true);
  17. //设置表格的选择方式
  18. table->setSelectionBehavior(QAbstractItemView::SelectItems);
  19. //设置编辑方式
  20. table->setEditTriggers(QAbstractItemView::DoubleClicked);
  21. //设置表格的内容
  22. for ( int row = 0; row < 4; ++row)
  23. {
  24. QTableWidgetItem *item0, *item1;
  25. item0 = new QTableWidgetItem;
  26. item1 = new QTableWidgetItem;
  27. QString txt = QString( "%1").arg(row + 1);
  28. item0->setText(txt);
  29. table->setItem(row, 0, item0);
  30. txt = QString( "%1").arg((row + 1) * 2);
  31. item1->setText(txt);
  32. table->setItem(row, 1, item1);
  33. }
  34. //增加一行
  35. table->setRowCount( 5);
  36. QTableWidgetItem *vHeader5 = new QTableWidgetItem( "Line5");
  37. table->setVerticalHeaderItem( 4, vHeader5);
  38. QTableWidgetItem *item5_0, *item5_1;
  39. item5_0 = new QTableWidgetItem;
  40. item5_1 = new QTableWidgetItem;
  41. item5_0->setText(QString( "%1").arg( 5));
  42. item5_1->setText(QString( "%1").arg( 5 * 2));
  43. table->setItem( 4, 0, item5_0);
  44. table->setItem( 4, 1, item5_1);


界面中的表格如图:

猜你喜欢

转载自blog.csdn.net/u013934107/article/details/80938029
今日推荐