Bonjour à tous,
Voilà j'ai un petit soucis dans une application que je suis entrain de concevoir.
Pour faire simple cette partie du programme est une fenêtre avec des comboBox qui contiennent les marques et modèle de gsm en stock dans notre magasin. Cette fenêtre permet d'imprimer les fiches technique relative a chaque appareil.
Donc je récupéré les valeur dans les Combobox, et je créer les chemin pour pouvoir aller lire le fichier associer au gsm.
Seulement lorsque l'utilisateur ne sélectionne rien comme valeur dans les autres combobox, celle-ci retourne "(null)". En quand elle retourne cela je ne parviens pas a concaténer mes chaine pour créer le chemin.
De quoi pourrais t- il venir?
Voici de quoi vous aider :
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 /* Botol_Window.c */ //Recuperation des Combobox Marque et Modele ST_SelectGsm[0].Marque = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboMarque1)); ST_SelectGsm[1].Marque = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboMarque2)); ST_SelectGsm[2].Marque = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboMarque3)); ST_SelectGsm[3].Marque = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboMarque4));// Si un des combox est vide ST_SelectGsm[0].Modele = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboModele1));// il lui atribuera la ST_SelectGsm[1].Modele = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboModele2));// valeur => (null) ST_SelectGsm[2].Modele = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboModele3)); ST_SelectGsm[3].Modele = gtk_combo_box_get_active_text(GTK_COMBO_BOX(pComboModele4)); //Creation des chemin des fichiers /* Il faut voir comment faire pour avoir le bon chemin quand la valeur est (null)*/ Chemin1 = g_strconcat("Data","/",ST_SelectGsm[0].Marque,"/",ST_SelectGsm[0].Modele,".ptc",NULL); Chemin2 = g_strconcat("Data","/",ST_SelectGsm[1].Marque,"/",ST_SelectGsm[1].Modele,".ptc",NULL); Chemin3 = g_strconcat("Data","/",ST_SelectGsm[2].Marque,"/",ST_SelectGsm[2].Modele,".ptc",NULL); Chemin4 = g_strconcat("Data","/",ST_SelectGsm[3].Marque,"/",ST_SelectGsm[3].Modele,".ptc",NULL); //Ouverture des fichiers FicheGsm1 = fopen(Chemin1, "r"); if (FicheGsm1 != NULL) printf("\nFiche Gsm 1 Charger... %s",Chemin1); else printf("\nErreur au chargement de la fiche Gsm 1"); FicheGsm2 = fopen(Chemin2, "r"); if (FicheGsm1 != NULL) printf("\nFiche Gsm 2 Charger... %s",Chemin2); else printf("\nErreur au chargement de la fiche Gsm 2"); FicheGsm3 = fopen(Chemin3, "r"); if (FicheGsm1 != NULL) printf("\nFiche Gsm 3 Charger... %s",Chemin3); else printf("\nErreur au chargement de la fiche Gsm 3"); FicheGsm4 = fopen(Chemin4, "r"); if (FicheGsm1 != NULL) printf("\nFiche Gsm 4 Charger... %s",Chemin4); else printf("\nErreur au chargement de la fiche Gsm 4"); //Lecture des fichier .......Voici si je renvoie les variables dans la console se que sa donne...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 /* Botol_Lib.c */ typedef struct SelectGsm SelectGsm; struct SelectGsm { const char *Marque; const char *Modele; };
Il ne créer pas le chemin.
![]()
Partager