Development/Tutorials/Programming Tutorial KDE 4/Using QTableWidget

From KDE TechBase

Use this as main.cpp:

  1. include <kapplication.h>
  2. include <kaboutdata.h>
  3. include <kcmdlineargs.h>
  4. include <QTableWidget>
  5. include <QHeaderView>

int main (int argc, char *argv[]) {

 KAboutData aboutData( "test", "test",
     "1.0", "test", KAboutData::License_GPL,
     "(c) 2007" );
 KCmdLineArgs::init( argc, argv, &aboutData );
 KApplication khello;

 QTableWidget* mw=new QTableWidget(0);

 QStringList labels;
 labels << "Greeting" << "Planet";
 mw->setColumnCount(2);
 mw->setEditTriggers(QAbstractItemView::AllEditTriggers);
 mw->setHorizontalHeaderLabels(labels);
 mw->horizontalHeader()->setStretchLastSection(true);
 mw->insertRow(0);
 QTableWidgetItem* item=new QTableWidgetItem("Hello");
 item->setFlags(Qt::ItemIsEnabled);
 item->setWhatsThis("You can change this task's comment, start time and end time.");
 mw->setItem(0,0,item);
 QTableWidgetItem* item2=new QTableWidgetItem("World");
 mw->setItem(0,1,item2);
 mw->show();
 khello.exec();

}

Use this as CMakeLists.txt:

PROJECT( ktablewidget )
FIND_PACKAGE(KDE4 REQUIRED)
INCLUDE_DIRECTORIES( ${KDE4_INCLUDES} . )


SET(ktablewidgetsources main.cpp )

KDE4_ADD_EXECUTABLE(ktablewidget ${ktablewidgetsources} )

TARGET_LINK_LIBRARIES(ktablewidget ${KDE4_KDEUI_LIBS} ${KDE4_KPARTS_LIBS} )

Compile it using

cmakekde

Call it using

ktablewidget