if combobox1.Text='N93i' then
begin
image1.visible:=true;
image2.visible:=true;
image5.visible:=true;
label1.Caption:='N75,N76,N81,N81 8GB';
end;
if combobox1.Text='N95' then
begin
image3.visible:=true;
image4.visible:=true;
image6.visible:=true;
label1.Caption:='N95i';
end;
if combobox1.Text='5500' then
begin
image7.visible:=true;
image8.visible:=true;
image9.visible:=true;
label1.Caption:='5500';
end;
if combobox1.Text='6085' then
begin
image12.visible:=true;
image13.visible:=true;
image14.visible:=true;
label1.Caption:='5200,6060,6070,6080,6101,6102,6103,6125,6170,7270,7360';
end;
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 5 janv. 2010 à 15:29
Ok j'ai très bien compris le projet et j'ai ciblé le problème.
Dans ton exemple j'ai 14 images, et si le project complet en contient 300 ... wow il est vrai que ton code sera trop gros.
Aussi, n'oublie pas que ton exe sera gros avec 300 images, enfin ça c'est un autre probleme tu verras bien une fois terminé.
Alors ce que je te conseille de faire :
Déjà, tu pourrais (pas obligé) supprimer le bouton "SELECT" car tu peux mettre le code dans le OnChange de la ComboBox.
Sinon prenons l'exemple avec "N93i" :
Je choisis "N93i", le programme va chercher (grâce à un FindComponent) tous les composants dont le nom est par exemple "img_N93i", soit "img_"+Combobox.Text.
Ce qui veut dire que toutes les images en rapport avec "N93i" doivent avoir le un nom avec "N93i".
Il me semble qu'il il a 3 images par téléphone, donc nous avons par exemple :
img_modele_N93i puis img_cable_N93i et img_afficheur_N93i.
Aussi, à la création, toutes tes images posées doivent être à "Visible:= False;" afin de ne pas avoir à le refaire lors du lancement du programme.
Dernière chose, un crée une variable globale qui va se souvenir du dernier modèle choisi afin de le remettre à "visible false" lors du prochain choix, car le prochain choix sera lui en "Visible true".
Pour le label "LCD", tu peux récuperer le contenu d'un "Hint", celui de "img_modele_N93i" par exemple afin de l'assigner au label.
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 5 janv. 2010 à 17:25
Ha je sais ... j'ai oublié une ligne de code !!
procedure TForm1.ComboChoixTelChange(Sender: TObject);
var LeCompo: TImage;
X: Integer;
begin
for X:=1 to 3 do
begin
// Pour remettre invisible le dernier modele choisi
LeCompo:= TImage(FindComponent('img_'+TabCompo[X]+'_'+DernierTel));
if LeCompo<>nil then
LeCompo.Visible:= False;
// Pour mettre visible le modele choisi
LeCompo:= TImage(FindComponent('img_'+TabCompo[X]+'_'+ComboChoixTel.Text));
if LeCompo<>nil then
begin
LeCompo.Visible:= True;
if X=1 then
lb_infos.Caption:= LeCompo.Hint;
end;
end;
DernierTel:= ComboChoixTel.Text;
end;
Bacterius
Messages postés3792Date d'inscriptionsamedi 22 décembre 2007StatutMembreDernière intervention 3 juin 201610 5 janv. 2010 à 10:07
On commence à peine l'année 2010 et on a déjà un candidat ! Yay !
Très sérieusement, je pense qu'il faudrait que tu jettes un coup d'oeil au règlement. Et faire preuve de politesse aussi.
Et ... apprendre un minimum l'orthographe aussi, car là c'est une faute grave tous les deux mots. Et mersie, hein.
Personne ne te donnera un code tout fait. D'ailleurs on ne sait même pas ce que tu veux !!
Et puis le choix de la rubrique, au pif quoi ...
Cordialement, Bacterius !
Vous n’avez pas trouvé la réponse que vous recherchez ?
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 5 janv. 2010 à 10:36
Renomme les composants pour que nous (et toi) puissions comprendre a quoi correspondent les images.
Tu cherches à gagner des ligens de code ? faire plus court ?
Je vois pas trop comment avec autant d'images.
Quelles sont ces 14 images ? Les voit-on sur la capture ?
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 5 janv. 2010 à 13:33
Ecoute, malgré que j'ai vraiment du mal à te lire et que d'habitude j'aurais envoyé baladé, là je vais encore essayer une fois : peux tu donner le projet afin que je vois comment ça se passe dans ton code ? je regarde des que je peux
je ne dis pas que je vais te le refaire, amis je vais essayer de comprendre, ça sera mon dernier effort chez smail, de ton coté, essaie vraiment de mieux parler français meme si je vois bien que ce n'est pas ta langue maternelle.
Caribensila
Messages postés2527Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention16 octobre 201918 6 janv. 2010 à 01:43
Sans vouloir vexer mon ami Julio, je voudrais quand même souligner le risque qu'il a pris en vous racontant une petite histoire qui ne date pas d'hier, mais du temps de Rabelais, et dont voici un résumé :
« Pendant leur voyage au " Pays des Lanternes ", Panurge se prit, en mer, de querelle avec le marchand Dindenault. Pour se venger, il lui acheta un de ses moutons, qu'il précipita dans la mer. L'exemple et les bêlements de celui-ci entrainèrent tous ses congénères et le marchand lui-même, qui, s'accrochant au dernier mouton, se noya. »
Alors, j'espère que Julio ne s'accrochera pas au dernier mouton, car nul doute qu'on n'a pas fini de voir des demandes à la con, pour des codes à la con, formulées à la con par une bande de cons.
Marcie 2 mavouar lu (ça, c'est pour la couleur locale).