voila je viens de le modifier :
dans le Frm.h j'ai déclaré :
1 2 3 4
|
const static int formatsCount = 7;
//QString *formats;
QString **formats; |
le Frm.cpp
(mon tableau dans Dta.h contient 6 lignes et 2 colonnes.
1 2 3 4 5 6 7 8 9 10 11 12 13
|
formats= NULL;
formats = new QString*[formatsCount];
for(int i=0; i<formatsCount; i++)
{
formats[i] = new QString[2]; //3 juste à titre d'exemple.
//la suite n'est pas nécessaire
for(int j =0; j<2; j++)
{
formats[i][j]=""; //initialisation de touts des QString.
}
} |
la déclaration du tableau je l'ai changé de :
Dta.h
1 2 3 4 5 6 7 8
|
formats[ 0 ][ 0 ] = "" ; formats[ 0 ][ 1 ] = "" ;
formats[ 1 ][ 0 ] = "ESRI Shapefile" ; formats[ 1 ][ 1 ] = "shp" ;
formats[ 2 ][ 0 ] = "MapInfo File" ; formats[ 2 ][ 1 ] = "tab" ;
formats[ 3 ][ 0 ] = "BNA" ; formats[ 3 ][ 1 ] = "bna" ;
formats[ 4 ][ 0 ] = "CSV" ; formats[ 4 ][ 1 ] = "csv" ;
formats[ 5 ][ 0 ] = "GML" ; formats[ 5 ][ 1 ] = "gml" ;
formats[ 6 ][ 0 ] = "KML" ; formats[ 6 ][ 1 ] = "kml" ; |
à
1 2 3 4 5 6 7 8
|
formats[ 0 ][ 0 ] = QString("") ; formats[ 0 ][ 1 ] = QString("" );
formats[ 1 ][ 0 ] = QString("ESRI Shapefile") ; formats[ 1 ][ 1 ] = QString("shp" );
formats[ 2 ][ 0 ] = QString("MapInfo File") ; formats[ 2 ][ 1 ] = QString("tab" );
formats[ 3 ][ 0 ] = QString("BNA" ); formats[ 3 ][ 1 ] = QString("bna" );
formats[ 4 ][ 0 ] = QString("CSV") ; formats[ 4 ][ 1 ] = QString("csv" );
formats[ 5 ][ 0 ] = QString("GML") ; formats[ 5 ][ 1 ] = QString("gml" );
formats[ 6 ][ 0 ] = QString("KML" ); formats[ 6 ][ 1 ] = QString("kml") ; |
Mais sa ne fonctionne pas encore toujours l'eeure de segmentation lors de l'execution!
QString types=formats[ 3 ][ 1 ]; //sont de eme type QString mais ca crée une erreur d'execution (segmentation) !!
Merci pour votres aide
Partager