Bonjour,

je voulais savoir comment trier un stringgrid alimenter virtuellement par une base de donner mysql...



Source :

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
 
AnsiString ADDR,BDD,root,password;
	TIniFile *conf = new TIniFile(".\\config.ini");
	ADDR = conf->ReadString("Connexion server", "Adresse_IP", "");
	BDD = conf->ReadString("Base de donner", "BDD", "");
	delete conf;
	root = Form1->root;
	password = Form1->password;
	MYSQL *mySQL;
	mySQL = mysql_init(NULL);
	MYSQL_RES *myRES;
	MYSQL_ROW myROW;
	AnsiString aStr;
 
	if (!mysql_real_connect(mySQL, ADDR.c_str(), root.c_str(), password.c_str(), BDD.c_str(), 0, NULL, 0))
	{
	Application->MessageBox("Erreur de Login ou Password...","", MB_OK|MB_ICONEXCLAMATION);
	}
	else
	{
 
 
 
   if (!mysql_query(mySQL, "select id_dossier,id_nom,id_prenom from gestions_clients")) {
	myRES = mysql_store_result(mySQL);
	if (myRES) {
		for(unsigned int i = 0; i < myRES->row_count; i++) {
			myROW = mysql_fetch_row(myRES);
			for(unsigned int j = 0; j < mysql_num_fields(myRES); j++) {
				aStr = myROW[j];
				// permet d'inverser les valeur
				int x,y,z;
				x = j;
				y = i;
				z = y+1;
 
				// il faudrais savoir combien de champs comporte la table pour
				// que le StrinGrid->RowCount  comporte le meme nombre
				// donc le bon nombre de ligne
				StringGrid1->Cells[x][z] = aStr;
 
 
 
				}
				StringGrid1->RowCount++;
			}
			mysql_free_result(myRES);
		}
	}
   }
Le source suivant fonctionne, il me permet d'afficher le contenu de la base de donner dans le stringgrid,..... mais comment faire pour trier