comment convertit ton un string en variable Tmemo ?

comment convertit ton un string en variable Tmemo ? - Delphi/Pascal - Programmation

Marsh Posté le 02-09-2003 à 18:52:04    


 
voila jai ca :  
 
nommemo:=copy(lememo.Name,0,length(lememo.Name)-1);
 
form1.reperer(nommemo+'2',a) , il me dit string et tmemo incompatibles , ca reperer est declarée (Tmemo,string)
 
mais nommemo+'2' , c le nom d'un tmemo  
 
so HELP !  

Reply

Marsh Posté le 02-09-2003 à 18:52:04   

Reply

Marsh Posté le 02-09-2003 à 19:41:39    

- les chaînes commencent à 1 et pas à 0 (ton copy est déjà foireux donc)
- tu veux faire quoi exactement ? Elle sert à quoi ta fonction "reperer" ? Y a quoi dedans ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 02-09-2003 à 20:08:03    

ma reperer est boolean et elle verifie dans le tmemo indique si le string( la ligne dans le tmemo) s'y trouve ..
 
elle marche parceque je lutilise en plein d'autre endroit du prog

Reply

Marsh Posté le 02-09-2003 à 20:12:27    

pourquoi tu passes pas le memo plutôt que de faire ce drôle de bricolage sur son nom ?


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 02-09-2003 à 20:18:05    

je t'explique ,  
 
imagine des memo : lundi1 , lundi2 , lundi3 , mardi1 , mardi2 et ... jusque samedi
 
mon but et de faire en qq ligne de code que quand une entree se trouve dans lundi2 (par ex) , elle n'y soit pas ni dans lundi1 ni dans lundi 3 , compris ?
 
alors au lieu de me taper des millions de procedures ...  
 
mon but et de recuperer le tmemo , ds lexemple lundi2 , viré le 2 et le remplacé par un 1 ou un 3 , et reconvertir en tmemo ...
et lancer ma procedure reperer ensuite  
 


Message édité par piloud le 02-09-2003 à 20:18:42
Reply

Marsh Posté le 02-09-2003 à 20:22:36    

là t'as choisi la méthode crado :D
T'aurais plutôt intérêt à faire des array de memo :
 
Memos: array[1..7] of array[1..3] of TMemo
 
Memos[1][1] := Lundi1;
Memos[1][2] := Lundi2;
etc.
Memos[5][3] := Vendredi3;
 
lundi1 sera array[1][1]
 
mercredi2 sera array[3][2]
 
c'est peut-être plus pratique, non ?
 
parce que rechercher un composant sur base de son nom, t'as FindComponent, mais  
- c'est pas propre parce que tu finis vite par ne plus t'y retrouver en te basant sur des chaînes de texte pour aller retrouver tes objets
- une perte de temps à l'exécution
 
En plus avec les tableaux tu peux facilement faire des boucles pour parcourir tous tes memos.


Message édité par antp le 02-09-2003 à 20:23:09

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 02-09-2003 à 20:32:32    

merci beaucoup mais c ds un endroit ou jai beaucoup de memoire libre et la procedure nest pas longue donc je v opter pour le findcomponent mais ca merde :  
 
form1.reperer(findcomponent(nommemo+'2'),a)
 
re help

Reply

Marsh Posté le 02-09-2003 à 20:40:32    

jai essaye ca aussi :  
with Tmemo(FindComponent(nommemo+'2')) do
    form1.reperer(self,a)
 
mais ca marche pas mieux

Reply

Marsh Posté le 02-09-2003 à 21:32:48    

C'est pas une question de quantité de mémoire, mais une question de faire les choses proprement.
 

piloud a écrit :

mais ca merde :  
 


 
càd ?
 

piloud a écrit :


 
mais ca marche pas mieux
 


 
Self = l'objet auquel appartient la procédure en cours, donc je vois mal ce que ce self vient faire là


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 03-09-2003 à 13:25:16    

Citation :

Mais ca merde :


 
Tmemo et tcomponent incompatible
 

Citation :

Self = l'objet auquel appartient la procédure en cours, donc je vois mal ce que ce self vient faire là


 
le but de mon self ( je lai fait un peu hazard ) cetait de prendre le with Tmemo(FindComponent(nommemo+'2')) do  
 
 
 

Citation :

C'est pas une question de quantité de mémoire, mais une question de faire les choses proprement.  


 
je veux bien faire comme ca mais je voit pas comment m'y prendre ...  
quand jaurai fais les memos[1][1] et etc .... , via koi comme ligne de code je serais  par ex si jarrive a recuperer juste le nom du tmemo ,  comment je pourrai savoir c lequel de mes memos[?][?]
 
et ensuite comment lui dire par exemple de recuperer juste le le 2 eme [?] et le remplacer par un autre chiffre  ?  
 
c en fait pour ca que je voulais utiliser le findcomponent que jai toujour pas compris  !  
 
help !

Reply

Marsh Posté le 03-09-2003 à 13:25:16   

Reply

Marsh Posté le 03-09-2003 à 13:28:33    

Citation :

le but de mon self ( je lai fait un peu hazard ) cetait de prendre le with Tmemo(FindComponent(nommemo+'2')) do  


 
bhen pourquoi tu passes pas en param Tmemo(FindComponent(nommemo+'2')) alors ?
ça marchera
 
Sinon pour le tableau, bhen t'as plus besoin des noms des memos, je vois pas trop où est le problème...


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 03-09-2003 à 15:03:27    

Voila c bon , ca marche parfaitement ! merci !  
pour l'histoire des memos[?][?] , c'etait trop complique dans cette exemple mais merci , c bon a savoir pour plus tard  
 
merci

Reply

Sujets relatifs:

Leave a Replay

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