[C++]

[C++] - Programmation

Marsh Posté le 02-08-2001 à 10:41:44    

Bonjour voila j'ai une question peut etre tres bete mais voila:
j'ai plusieurs programme genre machin1 machin2 machin3...
et j'aimerais faire une boucle du genre:
for (i=1; i<4; i++)
  machin[i]
 
alors evidemment le [i] marche moyen voir meme pas du tout...
 
au cas ou je fais ça sous C++ Builder 5
 
si quelqu'un à une idee...
merci


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 02-08-2001 à 10:41:44   

Reply

Marsh Posté le 02-08-2001 à 10:46:22    

Tu peux donner plus info sur ce que tu veux faire avec tes programmes 'machin'?

Reply

Marsh Posté le 02-08-2001 à 10:57:56    

char command[128];
 
for(int i=0; i<(je ne sais pas) ; i++)
{
   sprintf(command,"machin%d",i);   // cree une chaine machin1 ou machin2...
   system(command);
}
 
Et voila...

Reply

Marsh Posté le 02-08-2001 à 10:59:19    

en fait je suis à la masse ce matin c'est pas programme que je voulais utiliser
 
en fait j'ai des ComboBox a traiter et comme leur nombre est variable il faudrait que je puisse lancer mon programme qui les traite avec en parametre le "numero" du controle que j'utilise...
 
j'espere que c'est un peu plus clair...

 

[edtdd]--Message édité par Glopman--[/edtdd]


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 02-08-2001 à 11:00:24    

BENB -> en fait c'est pas possible ton truc dans mon cas parce que c'est un appel a fonction et je crois pas que system marche dans ces cas là...

 

[edtdd]--Message édité par Glopman--[/edtdd]


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 02-08-2001 à 11:05:06    

CreateProcess ( qui permet de controler le process créé) ou ShellExcute ( qui permet d'utiliser les possiblités du shell de windows)

Reply

Marsh Posté le 02-08-2001 à 11:07:55    

pour ShellExcute ça va pas etre possible puisque c'est une fonction dans mon programme...
 
CreateProcess je vois pas trop en fait je vais voir ça...


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 02-08-2001 à 11:12:46    

J'avais pas bien compris surtout que tu as mis 'et' au lieu de 'est'
En gros tu veux mettre tes controles dans un tableau et afficher celui que tu veux suivant le param passer à ton prog?

 

[edtdd]--Message édité par seblamb--[/edtdd]

Reply

Marsh Posté le 02-08-2001 à 11:25:37    

desole pour le est..
 
bon pour etre plus clair mes controles permettent de creer une sorte de miniscript
Or ce script n'a pas de taille predefinie donc on peut rajouter autant d'action que l'on le souhaite.
Le probleme vient de mon traitement de ces scripts, je dois relancer la fonction autant de fois que necessaire (pas un probleme) mais à chaque fois sur un controle different (probleme)
 
voila j'espere que c'est un peu plus clair


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 02-08-2001 à 11:31:16    

Ca me parais simple
Les controles sont des pointeurs donc tu fais un tableau de pointeur et tu le remplis.
Il y a peut etre d'autres contraintes ?

Reply

Marsh Posté le 02-08-2001 à 11:31:16   

Reply

Marsh Posté le 02-08-2001 à 11:40:45    

ça me parait bon ça...
 
j'ai du mal des fois n'empeche... bizarrement j'avais considerer les pointeurs comme pas viable mais j'arrive pas a me souvenir pourquoi et j'ai beau chercher, je vois pas...
 
merci j'essayerais ça bientot


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 02-08-2001 à 11:59:58    

ça y est je me souviens pourquoi je pensais que c'etait pas viable:
comment est-ce que je fais pour allouer dynamiquement mes pointeurs?
c'est à dire comment est-ce que je fais pour rajouter un pointeur vers le bon controle sans avoir besoin de le faire "à la main"
ça me deplace le probleme mais c'est tout...


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 02-08-2001 à 12:10:45    

Soit tu crées toi même tes controls dynamiquement  
   ex :  machin[1] = TButton(NULL);
Soit tu utilises la propriétée  
__property TComponent* Components[int Index] = {read=GetComponent};
de chaque composant qui stocke l'ensemble des controls qui sont dans le composant  
Et la tu parcour la liste de composant de ta fenetre et tu selectionnent ceux que tu veux.
 
Maintenant dans ton script, comme tu dis que tu veux utiliser tel ou tel composant ? par son nom, son numéro...

Reply

Marsh Posté le 02-08-2001 à 12:14:04    

ben avant je faisais ça par son nom mais là je vais faire ça par position dans le tableau
 
en tout cas je te remercie de ton aide je viens de comprendre...


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 06-08-2001 à 08:22:54    

bon finalement personne ne sait si c'est possible de lui dire d'utiliser le controle que l'on veut sans passer par un tableau de pointeur?
 
Parce que finalement le coup des tableau ça devient vraiment pas propre j'en ai une trentaine là et j'ai pas fini...
 
voila et merci


---------------
Chaos is found in greatest abundance wherever order is being sought. It always defeats order, because it is better organized.
Reply

Marsh Posté le 06-08-2001 à 09:21:26    

Glopman a écrit a écrit :

Bonjour voila j'ai une question peut etre tres bete mais voila:
j'ai plusieurs programme genre machin1 machin2 machin3...
et j'aimerais faire une boucle du genre:
for (i=1; i<4; i++)
  machin[i]
 
alors evidemment le [i] marche moyen voir meme pas du tout...
 
au cas ou je fais ça sous C++ Builder 5
 
si quelqu'un à une idee...
merci  




 
 :pt1cable:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed