IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Problème size et index d'un tableau de tableau


Sujet :

Android

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 137
    Points : 67
    Points
    67
    Par défaut Problème size et index d'un tableau de tableau
    Bonjour, en lançant mon code j'ai une erreur de ce type:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    01-02 09:29:51.236: E/AndroidRuntime(532): FATAL EXCEPTION: main
    01-02 09:29:51.236: E/AndroidRuntime(532): java.lang.RuntimeException: Unable to start activity ComponentInfo{rapport.presse.cim/rapport.presse.cim.Tableau}: java.lang.ArrayIndexOutOfBoundsException: length=20; index=20
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.ActivityThread.access$600(ActivityThread.java:123)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.os.Handler.dispatchMessage(Handler.java:99)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.os.Looper.loop(Looper.java:137)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.ActivityThread.main(ActivityThread.java:4424)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at java.lang.reflect.Method.invokeNative(Native Method)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at java.lang.reflect.Method.invoke(Method.java:511)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at dalvik.system.NativeStart.main(Native Method)
    01-02 09:29:51.236: E/AndroidRuntime(532): Caused by: java.lang.ArrayIndexOutOfBoundsException: length=20; index=20
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at rapport.presse.cim.Tableau.onCreate(Tableau.java:202)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.Activity.performCreate(Activity.java:4465)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920)
    01-02 09:29:51.236: E/AndroidRuntime(532): 	... 11 more
    Pourtant je ne pense pas me tromper:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    @Override
    for (int i = 0; i < 5; i++){
            	mDataMap.add(new ArrayList<String>());
            	for (int j = cpt; j < cpt+20; j++){
                	textViewTab[i][j] = (TextView) findViewById(textViewId[j].getResId());
                	cpt=+20;
                }
            	new AsyncDownloadTab(mDataMap.get(i), textViewTab[i]).execute(url, "choix", mVariable, "date", mDate[i]);
            }
    	}
    J'ai un double tableau, je rentre dans le tableau de tableau via ma première boucle et ensuite je m'occupe d'initialer mes Textview dans les cellules de chaque tableau.
    Quand j'ai fini l'étape pour le premier tableau je lance l'asyncDownload en envoyant ce tableau en paramètre.

    Dans ma classe asynchrone j'ai ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    @Override
    	protected void onPostExecute(List<String> result) {
    		super.onPostExecute(result);
    		if (mListChiffres != null){	
    			for(int i = 0; i < mTextViewMap.length; i++){
    				mTextViewMap[i].setText(mListChiffres.get(i));	
    			}
    		}
    	}
    Voilà je ne vois pas trop où j'ai fait une erreur.

    Voilci mes 2 classes concernées (la classe http est dc je ne la montre pas):

    Classe tableau:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    package rapport.presse.cim;
     
    import java.io.InputStream;
    import java.util.ArrayList;
    import java.util.List;
    import android.app.Activity;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.widget.Button;
    import android.widget.LinearLayout;
    import android.widget.TableLayout;
    import android.widget.TextView;
     
    public class Tableau extends Activity {
     
    	//protected static final View mCaseTableLayout16 = null;
     
    	public String[] mDate = {"2007", "2008", "2009", "2010", "2011"};
     
    	enum TextViewId{
    		mDataNbNumCol1(R.id.dataNbNum1),
    		mDataTirageCol1(R.id.dataTirage1),
    		mDataDiffTotCol1(R.id.dataDiffTot1),
    		mDataDiffPayCol1(R.id.dataDiffPay1),
    		mDataVindCol1(R.id.dataVind1),
    		mDataAbPrintCol1(R.id.dataAbPrint1),
    		mDataAbGroupCol1(R.id.dataAbGroup1),
    		mDataVNumPCol1(R.id.dataVNumP1),
    		mDataVTiersCol1(R.id.dataVTiers1),
    		mDataAdCol1(R.id.dataAd1),
    		mDataNonAdCol1(R.id.dataNonAd1),
    		mDataAffCol1(R.id.dataAff1),
    		mDataAutreDiffMCol1(R.id.dataAutreDiffM1),
    		mDataAdBisCol1(R.id.dataAdBis1),
    		mDataNonAdBisCol1(R.id.dataNonAdBis1),
    		mDataPushCol1(R.id.dataPush1),
    		mDataPullCol1(R.id.dataPull1),
    		mDataPullBisCol1(R.id.dataPullBis1),
    		mDataDisPubCol1(R.id.dataDisPub1),
    		mDataDiffDCol1(R.id.dataDiffD1),	
     
            mDataNbNumCol2(R.id.dataNbNum2),
            mDataTirageCol2(R.id.dataTirage2),
            mDataDiffTotCol2(R.id.dataDiffTot2),
            mDataDiffPayCol2(R.id.dataDiffPay2),
            mDataVindCol2(R.id.dataVind2),
            mDataAbPrintCol2(R.id.dataAbPrint2),
            mDataAbGroupCol2(R.id.dataAbGroup2),
            mDataVNumPCol2(R.id.dataVNumP2),
            mDataVTiersCol2(R.id.dataVTiers2),
            mDataAdCol2(R.id.dataAd2),
            mDataNonAdCol2(R.id.dataNonAd2),
            mDataAffCol2(R.id.dataAff2),
            mDataAutreDiffMCol2(R.id.dataAutreDiffM2),
            mDataAdBisCol2(R.id.dataAdBis2),
            mDataNonAdBisCol2(R.id.dataNonAdBis2),
            mDataPushCol2(R.id.dataPush2),
            mDataPullCol2(R.id.dataPull2),
            mDataPullBisCol2(R.id.dataPullBis2),
            mDataDisPubCol2(R.id.dataDisPub2),
            mDataDiffDCol2(R.id.dataDiffD2),
     
            mDataNbNumCol3(R.id.dataNbNum3),
            mDataTirageCol3(R.id.dataTirage3),
            mDataDiffTotCol3(R.id.dataDiffTot3),
            mDataDiffPayCol3(R.id.dataDiffPay3),
            mDataVindCol3(R.id.dataVind3),
            mDataAbPrintCol3(R.id.dataAbPrint3),
            mDataAbGroupCol3(R.id.dataAbGroup3),
            mDataVNumPCol3(R.id.dataVNumP3),
            mDataVTiersCol3(R.id.dataVTiers3),
            mDataAdCol3(R.id.dataAd3),
            mDataNonAdCol3(R.id.dataNonAd3),
            mDataAffCol3(R.id.dataAff3),
            mDataAutreDiffMCol3(R.id.dataAutreDiffM3),
            mDataAdBisCol3(R.id.dataAdBis3),
            mDataNonAdBisCol3(R.id.dataNonAdBis3),
            mDataPushCol3(R.id.dataPush3),
            mDataPullCol3(R.id.dataPull3),
            mDataPullBisCol3(R.id.dataPullBis3),
            mDataDisPubCol3(R.id.dataDisPub3),
            mDataDiffDCol3(R.id.dataDiffD3),
     
            mDataNbNumCol4(R.id.dataNbNum4),
            mDataTirageCol4(R.id.dataTirage4),
            mDataDiffTotCol4(R.id.dataDiffTot4),
            mDataDiffPayCol4(R.id.dataDiffPay4),
            mDataVindCol4(R.id.dataVind4),
            mDataAbPrintCol4(R.id.dataAbPrint4),
            mDataAbGroupCol4(R.id.dataAbGroup4),
            mDataVNumPCol4(R.id.dataVNumP4),
            mDataVTiersCol4(R.id.dataVTiers4),
            mDataAdCol4(R.id.dataAd4),
            mDataNonAdCol4(R.id.dataNonAd4),
            mDataAffCol4(R.id.dataAff4),
            mDataAutreDiffMCol4(R.id.dataAutreDiffM4),
            mDataAdBisCol4(R.id.dataAdBis4),
            mDataPushCol4(R.id.dataPush4),
            mDataPullCol4(R.id.dataPull4),
            mDataPullBisCol4(R.id.dataPullBis4),
            mDataDisPubCol4(R.id.dataDisPub4),
            mDataDiffDCol4(R.id.dataDiffD4),
     
            mDataNbNumCol5(R.id.dataNbNum5),
            mDataTirageCol5(R.id.dataTirage5),
            mDataDiffTotCol5(R.id.dataDiffTot5), 
            mDataDiffPayCol5(R.id.dataDiffPay5),   
            mDataVindCol5(R.id.dataVind5),
            mDataAbPrintCol5(R.id.dataAbPrint5),
            mDataAbGroupCol5(R.id.dataAbGroup5),
            mDataVNumPCol5(R.id.dataVNumP5),
            mDataVTiersCol5(R.id.dataVTiers5),
            mDataAdCol5(R.id.dataAd5),
            mDataNonAdCol5(R.id.dataNonAd5),
            mDataAffCol5(R.id.dataAff5),
            mDataAutreDiffMCol5(R.id.dataAutreDiffM5),
            mDataAdBisCol5(R.id.dataAdBis5),
            mDataNonAdBisCol5(R.id.dataNonAdBis5),
            mDataPushCol5(R.id.dataPush5),
            mDataPullCol5(R.id.dataPull5),
            mDataPullBisCol5(R.id.dataPullBis5),
            mDataDisPubCol5(R.id.dataDisPub5),
            mDataDiffDCol5(R.id.dataDiffD5);
     
    		private int resId;
    		private TextViewId(int r){
    			this.resId = r;
    		}
    		public int getResId(){
    			return this.resId;
    		}
    	}
     
    	enum ButtonId{
     
    		mNbNum(R.id.nbNum),
            mTirage(R.id.tirage),
            mDiffTot(R.id.diffTot),
        	mPullBis(R.id.pullBis);
     
    		private int resId;
    		private ButtonId(int r){
    			this.resId = r;
    		}
    		public int getResId(){
    			return this.resId;
    		}
    	}
     
    	enum TableId{
     
    		mTableLayout1(R.id.tableLayout1),
    		mTableLayout2(R.id.tableLayout2),
    		mTableLayout6(R.id.tableLayout3),
    		mTableLayout7(R.id.tableLayout4);
     
    		private int resId;
    		private TableId(int r){
    			this.resId = r;
    		}
    		public int getResId(){
    			return this.resId;
    		}
    	}
     
    	public TextViewId[] textViewId = TextViewId.values();
     
    	public TextView[] textViewMap = new TextView[20];
     
        public TextView[][] textViewTab = new TextView[5][textViewMap.length];
     
     
     
        public ButtonId[] buttonId = ButtonId.values();
        public Button[] buttonMap = new Button[buttonId.length]; //4
     
        public List<ArrayList<String>> mDataMap = new ArrayList<ArrayList<String>>(5); //5 colonnes 
     
        public TableId[] tableId = TableId.values();
        public TableLayout[] tableMap = new TableLayout[tableId.length]; //4
     
    	public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.tableau);
     
     
            final String url="http://192.168.1.100/cimPresse.php?donnee=getResultats";
     
     
            /**================================================
                    Récupération des passages de variable
                    ================================================**/
            Bundle extra = getIntent().getExtras();
            String mVariable = extra.getString("choix");
           // Log.i("log_tag", mVariable);
            int cpt = 0;
            for (int i = 0; i < 5; i++){
            	mDataMap.add(new ArrayList<String>());
            	for (int j = cpt; j < cpt+20; j++){
                	textViewTab[i][j] = (TextView) findViewById(textViewId[j].getResId());
                	cpt=+20;
                }
            	new AsyncDownloadTab(mDataMap.get(i), textViewTab[i]).execute(url, "choix", mVariable, "date", mDate[i]);
            }
     
            for (int k = 0; k < buttonId.length; k++){
            	tableMap[k] = (TableLayout) findViewById(tableId[k].getResId());
            	tableMap[k].setVisibility(View.GONE);
     
            	buttonMap[k] = (Button) findViewById(buttonId[k].getResId());
            	buttonMap[k].setOnClickListener(new MyTabListener(tableMap[k]));
            }
    	}
    }
    Classe asynchrone:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    package rapport.presse.cim;
     
    import java.io.InputStream;
    import java.util.ArrayList;
    import java.util.List;
     
    import android.os.AsyncTask;
    import android.util.Log;
    import android.widget.TextView;
     
    public class AsyncDownloadTab extends AsyncTask<String, Integer, List<String>> {
     
    	private InputStream mInputStream;
    	private HttpConnexionTab mHttpConnexionTab = new HttpConnexionTab();
     
    	public  List<String> mListChiffres = new ArrayList<String>();
    	private TextView[] mTextViewMap;
    	private int cpt;
     
     
     
    	public AsyncDownloadTab(ArrayList<String> mChiffres, TextView[] textViewMap){
    		this.mListChiffres = mChiffres;
    		this.mTextViewMap = textViewMap;
    		this.cpt = cpt;
    	}
    	@Override
    	protected List<String> doInBackground(String... params) {
    		// TODO Auto-generated method stub
    		String url = params[0];
    		String key1= params[1];
    		String choix = params[2];
    		String key2 = params[3];
    		String date = params[4];
    		mInputStream = mHttpConnexionTab.getConnexionHttp(url, key1, choix, key2, date);
    		String res = mHttpConnexionTab.convertToString(mInputStream);
    		mListChiffres = mHttpConnexionTab.parseJsonFile(res);
    		return mListChiffres;
    	}
     
    	@Override
    	protected void onPostExecute(List<String> result) {
    		super.onPostExecute(result);
    		if (mListChiffres != null){	
    			for(int i = 0; i < mTextViewMap.length; i++){
    				mTextViewMap[i].setText(mListChiffres.get(i));	
    			}
    		}
    	}
     
    			/**mDataTirage1.setText(mChiffresCol1.mDataTirage);
                            mDataDiffTot1.setText(mChiffresCol1.mDataDiffTot);
                            mDataDiffPay1.setText(mChiffresCol1.mDataDiffPay);
                            mDataVind1.setText(mChiffresCol1.mDataVind);
                            mDataAbPrint1.setText(mChiffresCol1.mDataAbPrint);
                            mDataAbGroup1.setText(mChiffresCol1.mDataAbGroup);
                            mDataVNumP1.setText(mChiffresCol1.mDataVNumP);
                            mDataVTiers1.setText(mChiffresCol1.mDataVTiers);
                            mDataAd1.setText(mChiffresCol1.mDataAd);
                            mDataNonAd1.setText(mChiffresCol1.mDataNonAd);
                            mDataAff1.setText(mChiffresCol1.mDataAff);
                            mDataAutreDiffM1.setText(mChiffresCol1.mDataAutreDiffM);
                            mDataAdBis1.setText(mChiffresCol1.mDataAdBis);
                            mDataNonAdBis1.setText(mChiffresCol1.mDataNonAdBis);
                            mDataPush1.setText(mChiffresCol1.mDataPush);
                            mDataPull1.setText(mChiffresCol1.mDataPull);
                            mDataPullBis1.setText(mChiffresCol1.mDataPullBis);
                            mDataDisPub1.setText(mChiffresCol1.mDataDisPub);
                            mDataDiffD1.setText(mChiffresCol1.mDataDiffD);
                    }
                    else {
                            mDataNbNum1.setText("-");
                            mDataTirage1.setText("-");
                            mDataDiffTot1.setText("-");
                            mDataDiffPay1.setText("-");
                            mDataVind1.setText("-");
                            mDataAbPrint1.setText("-");
                            mDataAbGroup1.setText("-");
                            mDataVNumP1.setText("-");
                            mDataVTiers1.setText("-");
                            mDataAd1.setText("-");
                            mDataNonAd1.setText("-");
                            mDataAff1.setText("-");
                            mDataAutreDiffM1.setText("-");
                            mDataAdBis1.setText("-");
                            mDataNonAdBis1.setText("-");
                            mDataPush1.setText("-");
                            mDataPull1.setText("-");
                            mDataPullBis1.setText("-");
                            mDataDisPub1.setText("-");
                            mDataDiffD1.setText("-");
                    }**/
    	}

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    757
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 757
    Points : 968
    Points
    968
    Par défaut
    Sans avoir trop regardé ton code, je te conseille d'éviter au maximum les boucles ayant comme condition d'arrêt des nombres fixes.
    Si tu veux itérer sur les valeurs d'un tableau il faut utiliser un boucle de ce style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for (int i = 0; i < 5; i++)
    for (int i = 0; i < textViewTab.length; i++)
    De plus, ta deuxième boucle est infinie (elle ne s'arrêtera jamais, sauf à cause d'un NPE)
    En effet, tu repousse la limite de 20 à chaque itération.
    Il y a donc un petit problème dans la logique de ton algorithme.
    Qu'essaie tu clairement de faire, et d'où vient ce cpt ? (ne devrait-il pas être en dehors de la boucle?)

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 137
    Points : 67
    Points
    67
    Par défaut
    Non en fait c'est un peu tordu ^^
    J'ai une énumération qui répertorie tous mes TextView (20/colonne à l'affichage).
    En gros chaque colonne équivaux à une date, et donc pour chacune je fais un tableau.
    Donc au premier passage dans la boucle, j'initialise les 20 premiers TextView de mon énumération (il sont déjà dans un tableau) avec leur id et ensuite j'envoie ce tableau à ma classe asynchrone pour qu'elle charge les data pour cette date.
    Ensuite ma boucle principale passe au second tableau qui fait la même chose mais avec les 20 éléments suivant de mon énumération et celà 5 fois.

    Donc en gros j'ai un tableau de 5 cellules comprenant des tableaux de 20 cellules

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 137
    Points : 67
    Points
    67
    Par défaut
    Je viens de comprendre pr le compteur, petite erreur d'inattention mais ça foire encore :s

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2012
    Messages
    137
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2012
    Messages : 137
    Points : 67
    Points
    67
    Par défaut
    Bon c'est résolu ^^
    En gros je faisait une énorme erreur en demandant de commencer par le bout du tableau... tout ça pasque je me suis trompé de tableau.
    Il y en avait un de 100 cellules et donc en gros je devais juste rajouter un petit compteur qui faisait +1 en fin de boucle ^^

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBA] Problème récup texte d'une cellule dans un tableau
    Par Marco le Pouillot dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 30/01/2006, 17h06
  2. Problème avec un tableau de tableau
    Par SubZero2 dans le forum Langage
    Réponses: 4
    Dernier message: 07/12/2005, 15h25
  3. Réponses: 21
    Dernier message: 21/11/2005, 09h52
  4. [Struts] Index de ligne dans 1 tableau
    Par javaSudOuest dans le forum Struts 1
    Réponses: 9
    Dernier message: 20/10/2005, 09h52
  5. problème avec z-index sous firefox ???
    Par SpaceFrog dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 22/09/2005, 20h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo