MainWindow::MainWindow() { QMenu *fileMenu = new QMenu(tr("&File")); QAction *quitAction = fileMenu->addAction(tr("E&xit")); quitAction->setShortcut(tr("Ctrl+Q")); QMenu *tableMenu = new QMenu(tr("&Table")); QAction *tableWidthAction = tableMenu->addAction(tr("Change Table &Width")); QAction *tableHeightAction = tableMenu->addAction(tr("Change Table &Height")); menuBar()->addMenu(fileMenu); menuBar()->addMenu(tableMenu); //! [0] tableWidget = new QTableWidget(this); //! [0] tableWidget->setSelectionMode(QAbstractItemView::ExtendedSelection); connect(quitAction, SIGNAL(triggered()), this, SLOT(close())); connect(tableWidthAction, SIGNAL(triggered()), this, SLOT(changeWidth())); connect(tableHeightAction, SIGNAL(triggered()), this, SLOT(changeHeight())); setupTableItems(); setCentralWidget(tableWidget); setWindowTitle(tr("Table Widget Resizing")); }
MainWindow::MainWindow() { QMenu *fileMenu = new QMenu(tr("&File")); QAction *quitAction = fileMenu->addAction(tr("E&xit")); quitAction->setShortcut(tr("Ctrl+Q")); QMenu *itemsMenu = new QMenu(tr("&Items")); QAction *sumItemsAction = itemsMenu->addAction(tr("&Sum Items")); QAction *averageItemsAction = itemsMenu->addAction(tr("&Average Items")); menuBar()->addMenu(fileMenu); menuBar()->addMenu(itemsMenu); //! [0] tableWidget = new QTableWidget(12, 3, this); //! [0] tableWidget->setSelectionMode(QAbstractItemView::ExtendedSelection); //! [1] QTableWidgetItem *valuesHeaderItem = new QTableWidgetItem(tr("Values")); tableWidget->setHorizontalHeaderItem(0, valuesHeaderItem); //! [1] valuesHeaderItem->setTextAlignment(Qt::AlignVCenter); QTableWidgetItem *squaresHeaderItem = new QTableWidgetItem(tr("Squares")); squaresHeaderItem->setIcon(QIcon(QPixmap(":/Images/squared.png"))); squaresHeaderItem->setTextAlignment(Qt::AlignVCenter); //! [2] QTableWidgetItem *cubesHeaderItem = new QTableWidgetItem(tr("Cubes")); cubesHeaderItem->setIcon(QIcon(QPixmap(":/Images/cubed.png"))); cubesHeaderItem->setTextAlignment(Qt::AlignVCenter); //! [2] tableWidget->setHorizontalHeaderItem(1, squaresHeaderItem); tableWidget->setHorizontalHeaderItem(2, cubesHeaderItem); connect(quitAction, SIGNAL(triggered()), this, SLOT(close())); connect(sumItemsAction, SIGNAL(triggered()), this, SLOT(sumItems())); connect(averageItemsAction, SIGNAL(triggered()), this, SLOT(averageItems())); setupTableItems(); setCentralWidget(tableWidget); setWindowTitle(tr("Table Widget")); }