int main(int argc, char *argv[]) { QApplication app(argc, argv); TableModel *model = new TableModel(4, 2, &app); //! [0] QTableView *firstTableView = new QTableView; QTableView *secondTableView = new QTableView; //! [0] //! [1] firstTableView->setModel(model); secondTableView->setModel(model); //! [1] firstTableView->horizontalHeader()->setModel(model); for (int row = 0; row < 4; ++row) { for (int column = 0; column < 2; ++column) { QModelIndex index = model->index(row, column, QModelIndex()); model->setData(index, QVariant(QString("(%1, %2)").arg(row).arg(column))); } } //! [2] secondTableView->setSelectionModel(firstTableView->selectionModel()); //! [2] firstTableView->setWindowTitle("First table view"); secondTableView->setWindowTitle("Second table view"); firstTableView->show(); secondTableView->show(); return app.exec(); }
void tst_QItemDelegate::QTBUG4435_keepSelectionOnCheck() { QStandardItemModel model(3, 1); for (int i = 0; i < 3; ++i) { QStandardItem *item = new QStandardItem(QLatin1String("Item ") + QString::number(i)); item->setCheckable(true); item->setFlags(Qt::ItemIsSelectable | Qt::ItemIsUserCheckable | Qt::ItemIsEnabled); model.setItem(i, item); } QTableView view; view.setModel(&model); view.setItemDelegate(new TestItemDelegate); view.show(); view.selectAll(); QVERIFY(QTest::qWaitForWindowExposed(&view)); QStyleOptionViewItem option; option.rect = view.visualRect(model.index(0, 0)); // mimic QStyledItemDelegate::initStyleOption logic option.features = QStyleOptionViewItem::HasDisplay | QStyleOptionViewItem::HasCheckIndicator; option.checkState = Qt::CheckState(model.index(0, 0).data(Qt::CheckStateRole).toInt()); const int checkMargin = qApp->style()->pixelMetric(QStyle::PM_FocusFrameHMargin, 0, 0) + 1; QPoint pos = qApp->style()->subElementRect(QStyle::SE_ViewItemCheckIndicator, &option, 0).center() + QPoint(checkMargin, 0); QTest::mouseClick(view.viewport(), Qt::LeftButton, Qt::ControlModifier, pos); QTRY_VERIFY(view.selectionModel()->isColumnSelected(0, QModelIndex())); QCOMPARE(model.item(0)->checkState(), Qt::Checked); }
int main( int argc, char *argv[] ) { QApplication app( argc, argv ); QSqlDatabase db = QSqlDatabase::addDatabase( "QSQLITE" ); db.setDatabaseName( "testdatabase.db" ); if( !db.open() ) { qDebug() << db.lastError(); qFatal( "Failed to connect." ); } QSqlQuery qry; qry.prepare( "CREATE TABLE IF NOT EXISTS names (id INTEGER UNIQUE PRIMARY KEY, " "firstname VARCHAR(30), " "lastname VARCHAR(30))" ); if( !qry.exec() ) { qDebug() << qry.lastError(); qFatal( "Failed to create the table" ); } qry.prepare( "INSERT INTO names (id, firstname, lastname) " "VALUES (:id, :firstname, :lastname)" ); qry.bindValue( ":id", 1 ); qry.bindValue( ":firstname", "John" ); qry.bindValue( ":lastname", "Doe" ); if( !qry.exec() ) { qDebug() << qry.lastError(); qFatal( "Failed to insert" ); } QSqlTableModel *model = new QSqlTableModel(); model->setTable( "names" ); model->setFilter( "lastname = 'Doe'" ); model->select(); // if removeColumn is enabled, the table won't be editable, this // is a bug under this old version //model->removeColumn( 0 ); QTableView *view = new QTableView(); //view->setColumnHidden( 0, true ); view->setModel( model ); view->show(); /* QSqlQueryModel *model = new QSqlQueryModel(); model->setQuery( "SELECT firstname, lastname FROM names" ); QTableView *view = new QTableView(); view->setModel( model ); view->show(); */ return app.exec(); }
//! [0] int main(int argc, char *argv[]) { QApplication app(argc, argv); QStandardItemModel model(4, 2); QTableView tableView; tableView.setModel(&model); SpinBoxDelegate delegate; tableView.setItemDelegate(&delegate); //! [0] tableView.horizontalHeader()->setStretchLastSection(true); //! [1] for (int row = 0; row < 4; ++row) { for (int column = 0; column < 2; ++column) { QModelIndex index = model.index(row, column, QModelIndex()); model.setData(index, QVariant((row+1) * (column+1))); } //! [1] //! [2] } //! [2] //! [3] tableView.setWindowTitle(QObject::tr("Spin Box Delegate")); tableView.show(); return app.exec(); }
int main( int argc, char* argv[] ){ if(argc != 2){ return std::cerr<<"No!"<<std::endl; } QApplication a(argc,argv); std::ifstream file; file.open(argv[1]); std::string line; std::string alltext; while(getline(file, line)){ alltext += line; alltext += "\n"; } file.close(); QString filetext(QString::fromStdString(alltext)); DnDAddressModel model(filetext); QListView listView; listView.setModel(&model); listView.setModelColumn(0); listView.show(); QTreeView treeView; treeView.setModel(&model); treeView.show(); QTableView tableView; tableView.setModel(&model); tableView.show(); return a.exec(); }
int main(int argc, char *argv[]) { std::cout << "Enter." << std::endl; QApplication app(argc, argv); QStandardItemModel model(4, 2); QTableView tableView; tableView.setModel(&model); ComboBoxDelegate delegate; //tableView.setItemDelegate(&delegate); tableView.setItemDelegateForColumn(1, &delegate); // Column 0 can take any value, column 1 can only take values up to 8. //tableView.horizontalHeader()->setStretchLastSection(true); for (int row = 0; row < 4; ++row) { for (int column = 0; column < 2; ++column) { QModelIndex index = model.index(row, column, QModelIndex()); model.setData(index, QVariant((row+1) * (column+1))); } } tableView.show(); return app.exec(); }
int main( int argc, char* argv[] ) { QApplication app( argc, argv ); // Open the addressbook file in the working directory QFile file("addressbook.csv"); if ( !file.open(QIODevice::ReadOnly|QIODevice::Text) ) return 1; // Read its content into a string QString addresses = QString::fromUtf8(file.readAll()); AddressbookModel model(addresses); QListView listView; listView.setModel(&model); listView.setModelColumn(0); listView.show(); QTreeView treeView; treeView.setModel(&model); treeView.show(); QTableView tableView; tableView.setModel(&model); tableView.show(); return app.exec(); }
bool historymanager::showhistory() { tablemodel->select(); tablemodel->setHeaderData(1 , Qt::Horizontal ,tr("title")); tablemodel->setHeaderData(2 , Qt::Horizontal , tr("url")); QTableView * tableview = new QTableView(); tableview->setModel(tablemodel); qDebug() << tablemodel->rowCount(); tableview->show(); }
QTableView* createView(QSqlQueryModel *model) { QTableView *view = new QTableView; view->setModel(model); view->show(); return view; }
int main(int argc, char *argv[]) { QApplication a(argc, argv); QTableView tableView; MyModel myModel(0); tableView.setModel( &myModel ); tableView.show(); return a.exec(); }
void createView(const QString &title, QSqlQueryModel *model) { static int offset = 0; QTableView *view = new QTableView; view->setModel(model); view->setWindowTitle(title); view->move(100 + offset, 100 + offset); offset += 20; view->show(); }
int main(int argc, char *argv[]) { QApplication app(argc, argv); QTableView tv; QStandardItemModel m; m.setRowCount(4); m.setColumnCount(2); tv.setModel(&m); tv.show(); tv.setItemDelegate(new ExampleDelegate()); app.exec(); }
int main(int argc, char *argv[]) { QApplication app(argc, argv); QTableView* table = new QTableView(); TableModel* model = new TableModel(table); MultipleSelectDelegate* delegate = new MultipleSelectDelegate(table); table->setModel(model); table->setItemDelegate(delegate); table->show(); return app.exec(); }
QTableView* createView(QSqlQueryModel *model, const QString &title = "") { QTableView *view = new QTableView; view->setModel(model); static int offset = 0; view->setWindowTitle(title); view->move(100 + offset, 100 + offset); offset += 20; view->show(); return view; }
int main(int argc, char *argv[]) { QApplication app(argc, argv); QTableView *qTableView = new QTableView; MyModel myModel(0); //setModel() //1.告诉qTableView多少行多少列需要展示 //2.每个单元格需要展示什么内容,就是data()返回值 qTableView->setModel(&myModel); qTableView->show(); return app.exec(); }
int main(int argc, char *argv[]) { QApplication app(argc, argv); QTextCodec::setCodecForTr(QTextCodec::codecForLocale()); WeaponModel model; QTableView view; view.setModel(&model); view.setWindowTitle(QObject::tr("自定义模型")); view.resize(640,480); view.show(); return app.exec(); }
void KinectCalibration::init(QTableView &kinectCalibrationTableView) { if (mongo_helper_->is_connected() == false) { return; } if (ros::master::check()) { initialising_ = true; CheckBoxDelegate *checkbox_delegate = new CheckBoxDelegate(&kinectCalibrationTableView); kinectCalibrationTableView.setItemDelegateForColumn(0, checkbox_delegate); std::vector<struct NodeRowData> gridData; Query query; query.sort("node.row"); std::unique_ptr<DBClientCursor> cursor = mongo_helper_->find("KinectCalibrationFunction", query); while (cursor->more()) { BSONElement node = cursor->next()["node"]; NodeRowData nodeRowData; if (node["selected"].ok()) node["selected"].Val(nodeRowData.selected); else nodeRowData.selected = false; if (node["friendlyName"].ok()) node["friendlyName"].Val(nodeRowData.friendlyName); if (node["nodePath"].ok()) node["nodePath"].Val(nodeRowData.nodePath); nodeRowData.running = false; gridData.push_back(nodeRowData); } kinect_calibration_table_model_ = std::make_shared<NodeTableModel>(this, mongo_helper_, &gridData); kinectCalibrationTableView.setModel(kinect_calibration_table_model_.get()); kinectCalibrationTableView.setColumnWidth(0, 100); kinectCalibrationTableView.setColumnWidth(1, 300); kinectCalibrationTableView.horizontalHeader()->setResizeMode(2, QHeaderView::Stretch); //kinectCalibrationTableView.setSelectionBehavior(QAbstractItemView::SelectRows); //kinectCalibrationTableView.setAutoFillBackground(true); kinectCalibrationTableView.verticalHeader()->setMovable(true); kinectCalibrationTableView.show(); initialising_ = false; } }
int main(int argc, char *argv[]) { QApplication app(argc, argv); if (!createConnection()) return 1; QSqlRelationalTableModel model; initializeModel(&model); QTableView *view = createView(QObject::tr("Relational Table Model"), &model); view->show(); return app.exec(); }
int main(int argc, char *argv[]) { QApplication a(argc, argv); //MainWindow w; //w.show(); ModelEx modelEx; QTableView view; view.setModel(&modelEx); view.setWindowTitle(QObject::tr("modelEx")); view.resize(400, 400); view.show(); return a.exec(); }
int main(int argc, char *argv[]) { QApplication a(argc, argv); QTableView *tableView = new QTableView; QTableModel tableModel(200,200); tableView->setModel(&tableModel); tableView->setGeometry(430,340,300,300); tableView->show(); return a.exec(); }
QTableView* createView(QSqlQueryModel *model, const QString &title = "") { QTableView *view = new QTableView; view->setModel(model); #if defined(Q_OS_SYMBIAN) || defined(Q_WS_MAEMO_5) || defined(Q_WS_SIMULATOR) Q_UNUSED(title); view->resizeColumnsToContents(); #else static int offset = 0; view->setWindowTitle(title); view->move(100 + offset, 100 + offset); offset += 20; view->show(); #endif return view; }
int main(int argc, char **argv) { QApplication app(argc, argv); ConversationModel model; GroupModel groupModel; groupModel.setQueryMode(EventModel::SyncQuery); groupModel.getGroups("/org/freedesktop/Telepathy/Account/gabble/jabber/dut_40localhost0"); model.getEvents(groupModel.group(groupModel.index(0, 0)).id()); QTableView view; view.setModel(&model); view.show(); #if 0 // Examples for accessing group data. You'll have to either use // SyncQuery mode or wait for rowsInserted() or modelReady() before // you can iterate over the model data. for (int i = 0; i < model.rowCount(); i++) { // Model style: qDebug() << model.index(i, EventModel::EventId).data().toString() << model.index(i, EventModel::StartTime).data().toDateTime() << model.index(i, EventModel::LocalUid).data().toString() << model.index(i, EventModel::RemoteUid).data().toString() << model.index(i, EventModel::FreeText).data().toString(); // Event style: Event e = model.event(model.index(i, 0)); // or // Event e = model.index(i, 0).data(Qt::UserRole).value<Event>(); qDebug() << e.id() << e.startTime() << e.localUid() << e.remoteUid() << e.freeText(); } #endif int ret = app.exec(); return ret; }
void CCustomHeadersTest::test_insertRowColumn_1() { QTableView stTableView; m_ptrShopHeader = new CShopHeaderView(); stTableView.setHorizontalHeader(m_ptrShopHeader); stTableView.setModel(m_ptrModel); stTableView.show(); ////////////////////////////////////////////////////////////////////////// QCOMPARE(m_ptrModel->columnCount(),1); QCOMPARE(m_ptrModel->rowCount(),1); int iColumnCount = m_ptrModel->columnCount(); QVERIFY(m_ptrModel->insertColumn(iColumnCount)); QVERIFY(m_ptrModel->insertRow(m_ptrModel->rowCount())); m_ptrModel->setHeaderData(iColumnCount,Qt::Horizontal,true,Role_ShopColumnActive); QVERIFY(m_ptrModel->insertColumn(m_ptrModel->columnCount())); QVERIFY(m_ptrModel->insertRow(m_ptrModel->rowCount())); }
QtTutorial::QtTutorial(QWidget *parent) : QMainWindow(parent) { // ALL OF OUR VIEWS QListView *listView = new QListView(); listView->show(); QTreeView *treeView = new QTreeView(); treeView->show(); QComboBox *comboBox = new QComboBox(); comboBox->show(); QTableView *tableView = new QTableView(); tableView->show(); // RGBA QColor red = QColor(255, 0, 0, 255); QColor green = QColor(0, 255, 0, 255); QColor blue = QColor(0, 0, 255, 255); QList<QColor> items; items.append(red); items.append(green); items.append(blue); int rowCount = 4; int columnCount = 6; PaletteListModel *model = new PaletteListModel(items); // Insert at Position 3 -> 5 empty rows model->insertRows(3, 5); // Remove from position 4 -> 1 row // model->removeRows(4,1); listView->setModel(model); comboBox->setModel(model); tableView->setModel(model); treeView->setModel(model); }
void createView(const QString &title, QSqlQueryModel *model) { static int offset = 0; QTableView *view = new QTableView; view->setModel(model); view->setWindowTitle(title); view->move(100 + offset, 100 + offset); offset += 20; view->show(); std::cout << "createView\n"; for (int i = 0; i < model->rowCount(); ++i) { int id = model->record(i).value("id").toInt(); QString name = model->record(i).value("name").toString(); std::cout << name.toStdString() << "\n"; } std::cout.flush(); }
int main(int argc, char *argv[]) { QApplication a(argc, argv); QMap<QString, double> currencyMap; currencyMap.insert("AUD", 1.3257); currencyMap.insert("CHF", 1.2980); currencyMap.insert("SGD", 1.6911); currencyMap.insert("USD", 1.0000); CurrencyModel currencyModel(currencyMap); QTableView tableView; tableView.setModel(¤cyModel); tableView.setAlternatingRowColors(true); tableView.show(); return a.exec(); }
int main(int argc, char *argv[]) { QApplication app(argc, argv); if (!createConnection()) return 1; createRelationalTables(); QSqlRelationalTableModel model; initializeModel(&model); QTableView *view = createView(QObject::tr("Relational Table Model"), &model); #if defined(Q_OS_SYMBIAN) view->showMaximized(); #else view->show(); #endif return app.exec(); }
void QSqlQueryModel_snippets() { { //! [16] QSqlQueryModel *model = new QSqlQueryModel; model->setQuery("SELECT name, salary FROM employee"); model->setHeaderData(0, Qt::Horizontal, tr("Name")); model->setHeaderData(1, Qt::Horizontal, tr("Salary")); //! [17] QTableView *view = new QTableView; //! [17] //! [18] view->setModel(model); //! [18] //! [19] view->show(); //! [16] //! [19] //! [20] view->setEditTriggers(QAbstractItemView::NoEditTriggers); //! [20] } //! [21] QSqlTableModel model; model.setTable("employee"); model.select(); int salary = model.record(4).value("salary").toInt(); //! [21] Q_UNUSED(salary); { //! [22] int salary = model.data(model.index(4, 2)).toInt(); //! [22] Q_UNUSED(salary); } for (int row = 0; row < model.rowCount(); ++row) { for (int col = 0; col < model.columnCount(); ++col) { qDebug() << model.data(model.index(row, col)); } } }
void LayerTreeModel::showAttributeTable(const QModelIndex &index) { if (!index.isValid()) return; const QList<AbstractLayer *>& layers = m_map->layers(); if (layers.size() <= index.row()) { Log.e(QString("Invalid index %1").arg(index.row())); return; } AbstractLayer *layer = layers.at(index.row()); FeatureLayer* featureLayer = static_cast<FeatureLayer*>(layer); // TODO: memory leak, use dialog for it QTableView* attributes = new QTableView(); FeatureClassModel* featureLayerModel = new FeatureClassModel(*featureLayer->featureClass(), attributes); attributes->setModel(featureLayerModel); attributes->show(); }
int main(int argc, char *argv[]) { QApplication a(argc, argv); QStandardItemModel model(4,4); QTableView tableView; tableView.setModel(&model); DateDelegate dateDelegate; tableView.setItemDelegateForColumn(1,&dateDelegate); ComboDelegate comboDelegate; tableView.setItemDelegateForColumn(2,&comboDelegate); SpinDelegate spinDelegate; tableView.setItemDelegateForColumn(3,&spinDelegate); model.setHeaderData(0,Qt::Horizontal,QObject::tr("姓名")); model.setHeaderData(1,Qt::Horizontal,QObject::tr("生日")); model.setHeaderData(2,Qt::Horizontal,QObject::tr("职业")); model.setHeaderData(3,Qt::Horizontal,QObject::tr("收入")); QFile file("test.txt"); if(file.open(QFile::ReadOnly|QFile::Text)) { QTextStream stream(&file); QString line; model.removeRows(0,model.rowCount(QModelIndex()),QModelIndex()); int row =0; do{ line = stream.readLine(); if(!line.isEmpty()) { model.insertRows(row,1,QModelIndex()); QStringList pieces = line.split(",",QString::SkipEmptyParts); model.setData(model.index(row,0,QModelIndex()),pieces.value(0)); model.setData(model.index(row,1,QModelIndex()),pieces.value(1)); model.setData(model.index(row,2,QModelIndex()),pieces.value(2)); model.setData(model.index(row,3,QModelIndex()),pieces.value(3)); row++; } }while(!line.isEmpty()); file.close(); } tableView.setWindowTitle(QObject::tr("Delegate")); tableView.show(); return a.exec(); }