Hallo,
ich versuche gerade folgende 3 Sachen zu implementierten:
1. QTableWidget ohne vertikale Headers
2. beim click in eine Zelle soll die ganze Zeile selektiert werden
3. ein bestimmte Zeile komplett selektieren.
Weiss einer wie das geht ?
Zu 1:
Habe schon probiert setVerticalTableHeaders mit einer leeren Liste... geht aber nicht.
Zu 2 und 3: Keine Ahnung.....
Gruss,
Nando
QT4 QTableWidget 3 Fragen:
Re: QT4 QTableWidget 3 Fragen:
1- wass sind vertikale Headers?nando hat geschrieben:Hallo,
1. QTableWidget ohne vertikale Headers
2. beim click in eine Zelle soll die ganze Zeile selektiert werden
3. ein bestimmte Zeile komplett selektieren.
3 click und doppelclick zuweisen
die 1/2 class aus meinem projekt der die excel tabelle aufuelt...
http://sourceforge.net/projects/qtexcel-xslt/ ...
2- signal umleiten von feld zu row .... oder doppelclick zuweisen
Code: Alles auswählen
void Include_Table::RefillTable( QString tablesql )
{
noloop = 10;
structuresql = GetStructureTable(tablesql);
bool have_index = structuresql.contains("integer primary key", Qt::CaseInsensitive);
tablename = tablesql; /* save on class !*/
QSqlQuery query;
/* check if as INTEGER PRIMARY KEY */
sqlmodel = new QSqlTableModel();
sqlmodel->setTable( tablesql );
sqlmodel->setEditStrategy(QSqlTableModel::OnRowChange);
sqlmodel->select();
tabella_core->setModel(sqlmodel);
tabella_core->setItemDelegate(new QSqlRelationalDelegate(tabella_core));
horizontalheader = new QHeaderView(Qt::Horizontal,this);
horizontalheader = tabella_core->horizontalHeader();
connect (horizontalheader,SIGNAL(sectionClicked(int)),this,SLOT(sortColumn(int)));
if (have_index) {
vertikalheader = new QHeaderView(Qt::Vertical,this);
vertikalheader = tabella_core->verticalHeader();
connect (vertikalheader,SIGNAL( sectionDoubleClicked(int)),this,SLOT(VertikalRow(int)));
}
/* discovery total row/cools register on class ..... start */
summ_rows = sqlmodel->rowCount(); /* save on class !*/
summ_cools = sqlmodel->columnCount(); /* save on class !*/
/* discovery total row/cools ..... end */
if (have_index) {
insert_row->setEnabled(true);
create_index_button->setEnabled(false);
/* debugline->setText( QString( "%1 index ok" ).arg( int2char( summ_cools ) ) ); */
row_total->display( QString( "%1" ).arg( int2char( summ_rows ) ) );
} else {
insert_row->setEnabled(false);
create_index_button->setEnabled(true);
/* debugline->setText( QString( "%1 noindex" ).arg( int2char( summ_cools ) ) ); */
row_total->display( QString( "%1" ).arg( int2char( summ_rows ) ) );
}
}
vertical header sind die headers, die links standard maessig aufsteigende zahlen sind...
HH = Horizontale Header
VH = Vertikale Header
HH1 HH2 HH3 HHn
VH1 COL1 COL2 COL3 ... COLn
VH2
VH3
VH4
VHn
Bei den horizontalen headers funktioniert das..... aber die vertikalen brauche ich nciht...
wie bekomm ich die weg ??
Viele Gruesse,
Nando
HH = Horizontale Header
VH = Vertikale Header
HH1 HH2 HH3 HHn
VH1 COL1 COL2 COL3 ... COLn
VH2
VH3
VH4
VHn
Bei den horizontalen headers funktioniert das..... aber die vertikalen brauche ich nciht...
wie bekomm ich die weg ??
Viele Gruesse,
Nando
Es gibt nur einen vertikalen Header...
Und dann könntest du dir das SelectionModel anschauen, da gibt's das was du suchst...
Code: Alles auswählen
verticalHeader()->hide();