ich moechte ja nur den selectStatement() bekommen....
sowie die feldnamen zu bekommen um row hinzuzufuegen und loeschen...
QString QSqlTableModel::selectStatement () const [virtual protected]
Returns the SQL SELECT statement used internally to populate the model. The statement includes the filter and the ORDER BY clause.
muss ich extra die class ableiten? fuer eine variable?
friend class kommt so rein....
Code: Alles auswählen
class Include_Table : public QWidget, public Ui::Include_Table
{
friend class QSqlTableModel;
Q_OBJECT
//
public:
Include_Table( QWidget* = 0);
void RefillTable( QString tablesql );
QSqlTableModel *sqlmodel;
QHeaderView *qheader;
QSqlRelationalTableModel *sqlmodeler;
die table aufuellen sqlite3
Code: Alles auswählen
/* in table sql name out editable QTableView (tabella_core) */
void Include_Table::RefillTable( QString tablesql )
{
QSqlQuery query;
int looper = 0;
query.exec("SELECT * FROM "+tablesql); /* field name not know !*/
QSqlRecord rec = query.record(); /* nummer col */
int columntot = rec.count();
while (query.next()) {
looper++;
}
/* discovery total row..... */
QString totaltext = QString( "%1" ).arg( int2char( looper ) );
row_total->display( totaltext );
sqlmodel = new QSqlTableModel(this);
sqlmodel->setTable( tablesql );
sqlmodel->setEditStrategy(QSqlTableModel::OnFieldChange);
sqlmodel->select();
debugline->setText( QString( "Total cools = %1" ).arg( int2char( columntot ) ) );
/* PROTECTED! debugline->setText( QString(sqlmodel->selectStatement() ) ); */
tabella_core->setModel(sqlmodel);
tabella_core->setItemDelegate(new QSqlRelationalDelegate(tabella_core));
qheader = new QHeaderView(Qt::Horizontal,this);
qheader = tabella_core->horizontalHeader();
connect (qheader,SIGNAL(sectionClicked(int)),this,SLOT(sortColumn(int)));
}