|
PROFESSIONAL NEWSGROUPS WINDEV, WEBDEV and WINDEV Mobile |
| | | | | |
Started by pascal, Sep., 16 2004 7:29 PM - 6 replies |
| |
| | | |
|
| |
Posted on September, 16 2004 - 7:29 PM |
Bonjour, Voila je sèche sur un problème de table (mémoire) ouvrant un menu contextuel. je suis dans une colonne de la table. j'ai affecté un menu contextuel uniquement à cette colonne. Dans le code du menu, j'ai besoin du nom ou de l'indice de la colonne afin de renvoyer la valeur calculée dans le code du menu. Or je ne trouve aucune fonction me permettant de récupérer cette info. ChampContextuel et ChampEnCours me donnent le nom de la table. Je pensais m'en sortir avec ColonnEnCours, mais je récupère sytématiquement -1. Quelqu'un aurait une idée?
Mon code: cChampAppelant est une chaîne eCol est un entier dDate est une Date = DateSys()
// Récupérer le nom du champ cChampAppelant = ChampContextuel() SI {cChampAppelant}..Type=typTable ALORS eCol=ColonneEnCours() <------- tjrs -1 bien que le champ soit une table :-@ FIN SI {cChampAppelant}..Type=typComboAVS OU {cChampAppelant}..Type=typComboSNS ALORS ListeModifie(cChampAppelant,gLien(dDate)+DateVersChaine(dDate),1) ListeSelectPlus(cChampAppelant,1) SINON SI {cChampAppelant}..Type=typTable ALORS {cChampAppelant}[IndiceEnCours()][eCol]=dDate SINON cChampAppelant=dDate FIN FIN
Peut être ai-je raté quelque chose. Merci de vos lumières.
-- Pascal Ferracci efpé
efpe@efpe.biz |
| |
| |
| | | |
|
| | |
| |
Posted on September, 16 2004 - 9:56 PM |
utilise la fonction TableInfoXY() ou les fonctions ci-jointes cordialement JCP
PROCEDURE TableInfoLigne(pNomTable) x est un entier = PoidsFaible(CurseurPos()) y est un entier = PoidsFort(CurseurPos()) slig est une chaîne = TableInfoXY(pNomTable, tiNumLigne + tiOrigineEcran, x, y) nLig est un entier = slig RENVOYER nLig // position de la ligne
PROCEDURE TableInfoColonne(pNomTable) x est un entier = PoidsFaible(CurseurPos()) y est un entier = PoidsFort(CurseurPos()) sCol est une chaîne = TableInfoXY(pNomTable, tiNumColonne + tiOrigineEcran, x, y) nCol est un entier = sCol RENVOYER nCol // position de la colonne
"Pascal F" <pascal@efpe.biz> a écrit dans le message de news:4149b13f@news.pcsoft.fr...
Bonjour, Voila je sèche sur un problème de table (mémoire) ouvrant un menu contextuel. je suis dans une colonne de la table. j'ai affecté un menu contextuel
uniquement à cette colonne. > Dans le code du menu, j'ai besoin du nom ou de l'indice de la colonne afin de renvoyer la valeur calculée dans le code du menu.
Or je ne trouve aucune fonction me permettant de récupérer cette info. ChampContextuel et ChampEnCours me donnent le nom de la table. Je pensais m'en sortir avec ColonnEnCours, mais je récupère sytématiquement -1.
Quelqu'un aurait une idée?
Mon code: cChampAppelant est une chaîne eCol est un entier dDate est une Date = DateSys()
// Récupérer le nom du champ cChampAppelant = ChampContextuel() SI {cChampAppelant}..Type=typTable ALORS eCol=ColonneEnCours() <------- tjrs -1 bien que le champ soit une table :-@ FIN SI {cChampAppelant}..Type=typComboAVS OU {cChampAppelant}..Type=typComboSNS ALORS
ListeModifie(cChampAppelant,gLien(dDate)+DateVersChaine(dDate),1) ListeSelectPlus(cChampAppelant,1) SINON SI {cChampAppelant}..Type=typTable ALORS {cChampAppelant}[IndiceEnCours()][eCol]=dDate SINON cChampAppelant=dDate FIN FIN
Peut être ai-je raté quelque chose. Merci de vos lumières.
-- Pascal Ferracci efpé
efpe@efpe.biz
|
| |
| |
| | | |
|
| | |
| |
Posted on September, 16 2004 - 10:26 PM |
Bonjour, voici le code pour récupérer le nom de la colonne
cColonneAppelante est une chaine x est un entier y est un entier //A Ajouter dans le code de SI {cChampAppelant}..Type=typTable ALORS x = PoidsFaible(CurseurPos(cpEcran)) y = PoidsFort(CurseurPos(cpEcran)) cColonneAppelante = TableInfoXY(Table1,tiNomColonne+tiOrigineEcran, x, y)
ensuite pour aller écrire la valeur il faut le faire ainsi SI {cChampAppelant}..Type=typTable ALORS {cColonneAppelante}[IndiceEnCours()]=dDate ...
J'espère que ca va t'aider
Mathieu |
| |
| |
| | | |
|
| | |
| |
Posted on September, 16 2004 - 10:29 PM |
Regardes dans l'aide la rubrique 'Table, Récupérer les coordonnées du clic droit dans le menu contextuel' Regardes égalemment l'aide de la fonction TableInfoXY
Bon dev
"Pascal F" <pascal@efpe.biz> a écrit dans le message de news:4149b13f@news.pcsoft.fr...
Bonjour, Voila je sèche sur un problème de table (mémoire) ouvrant un menu
contextuel. > je suis dans une colonne de la table. j'ai affecté un menu contextuel uniquement à cette colonne.
Dans le code du menu, j'ai besoin du nom ou de l'indice de la colonne afin de renvoyer la valeur calculée dans le code du menu.
Or je ne trouve aucune fonction me permettant de récupérer cette info. ChampContextuel et ChampEnCours me donnent le nom de la table. Je pensais m'en sortir avec ColonnEnCours, mais je récupère sytématiquement -1.
Quelqu'un aurait une idée?
Mon code: cChampAppelant est une chaîne eCol est un entier dDate est une Date = DateSys()
// Récupérer le nom du champ cChampAppelant = ChampContextuel() SI {cChampAppelant}..Type=typTable ALORS eCol=ColonneEnCours() <------- tjrs -1 bien que le champ soit une table :-@
FIN SI {cChampAppelant}..Type=typComboAVS OU {cChampAppelant}..Type=typComboSNS ALORS
ListeModifie(cChampAppelant,gLien(dDate)+DateVersChaine(dDate),1) ListeSelectPlus(cChampAppelant,1) SINON SI {cChampAppelant}..Type=typTable ALORS {cChampAppelant}[IndiceEnCours()][eCol]=dDate SINON cChampAppelant=dDate FIN FIN
Peut être ai-je raté quelque chose. Merci de vos lumières.
-- Pascal Ferracci efpé
efpe@efpe.biz
|
| |
| |
| | | |
|
| | |
| |
Posted on September, 16 2004 - 10:30 PM |
JCP a émis l'idée suivante :
utilise la fonction TableInfoXY() ou les fonctions ci-jointes cordialement JCP PROCEDURE TableInfoLigne(pNomTable) x est un entier = PoidsFaible(CurseurPos()) y est un entier = PoidsFort(CurseurPos()) slig est une chaîne = TableInfoXY(pNomTable, tiNumLigne + tiOrigineEcran, x, y) nLig est un entier = slig RENVOYER nLig // position de la ligne PROCEDURE TableInfoColonne(pNomTable) x est un entier = PoidsFaible(CurseurPos()) y est un entier = PoidsFort(CurseurPos()) sCol est une chaîne = TableInfoXY(pNomTable, tiNumColonne + tiOrigineEcran, x, y) nCol est un entier = sCol RENVOYER nCol // position de la colonne "Pascal F" <pascal@efpe.biz> a écrit dans le message de news:4149b13f@news.pcsoft.fr... Bonjour, Voila je sèche sur un problème de table (mémoire) ouvrant un menu contextuel. je suis dans une colonne de la table. j'ai affecté un menu contextuel uniquement à cette colonne. Dans le code du menu, j'ai besoin du nom ou de l'indice de la colonne afin de renvoyer la valeur calculée dans le code du menu. Or je ne trouve aucune fonction me permettant de récupérer cette info. ChampContextuel et ChampEnCours me donnent le nom de la table. Je pensais m'en sortir avec ColonnEnCours, mais je récupère sytématiquement -1. Quelqu'un aurait une idée?
Mon code: cChampAppelant est une chaîne eCol est un entier dDate est une Date = DateSys()
// Récupérer le nom du champ cChampAppelant = ChampContextuel() SI {cChampAppelant}..Type=typTable ALORS eCol=ColonneEnCours() <------- tjrs -1 bien que le champ soit une table :-@ FIN SI {cChampAppelant}..Type=typComboAVS OU {cChampAppelant}..Type=typComboSNS ALORS ListeModifie(cChampAppelant,gLien(dDate)+DateVersChaine(dDate),1) ListeSelectPlus(cChampAppelant,1) SINON SI {cChampAppelant}..Type=typTable ALORS {cChampAppelant}[IndiceEnCours()][eCol]=dDate SINON cChampAppelant=dDate FIN FIN
Peut être ai-je raté quelque chose. Merci de vos lumières.
-- Pascal Ferracci efpé
efpe@efpe.biz
Merci, mais le problème est que la fonction CurseurPos() renvoi l'endroit où j'ai cliqué dans le menu contextuel et non l'emplacement de la colonne.
-- Pascal Ferracci efpé
efpe@efpe.biz |
| |
| |
| | | |
|
| | |
| |
Posted on September, 17 2004 - 12:16 AM |
Pascal F <pascal@efpe.biz> écrivait news:4149b13f@news.pcsoft.fr:
contextuel uniquement à cette colonne. Dans le code du menu, j'ai besoin du nom ou de l'indice de la colonne afin de renvoyer la valeur calculée dans le code du menu. Or je ne trouve aucune fonction me
Salut,
Utilise TableInfoXY, cette fonction est bien documentée. Elle permet la récupération de la colonne (ou de la ligne) en fonction de coordonnées. Pour le menu contextuel l'utilisateur utilise la souris, tu as donc les coordonnées de la souris !
-- En esperant t'avoir aidé. ted |
| |
| |
| | | |
|
| | |
| |
Posted on September, 17 2004 - 12:50 AM |
Thierry a écrit :
Regardes dans l'aide la rubrique 'Table, Récupérer les coordonnées du clic droit dans le menu contextuel' Regardes égalemment l'aide de la fonction TableInfoXY Bon dev "Pascal F" <pascal@efpe.biz> a écrit dans le message de news:4149b13f@news.pcsoft.fr... Bonjour, Voila je sèche sur un problème de table (mémoire) ouvrant un menu contextuel. je suis dans une colonne de la table. j'ai affecté un menu contextuel uniquement à cette colonne. Dans le code du menu, j'ai besoin du nom ou de l'indice de la colonne afin de renvoyer la valeur calculée dans le code du menu. Or je ne trouve aucune fonction me permettant de récupérer cette info. ChampContextuel et ChampEnCours me donnent le nom de la table. Je pensais m'en sortir avec ColonnEnCours, mais je récupère sytématiquement -1. Quelqu'un aurait une idée?
Mon code: cChampAppelant est une chaîne eCol est un entier dDate est une Date = DateSys()
// Récupérer le nom du champ cChampAppelant = ChampContextuel() SI {cChampAppelant}..Type=typTable ALORS eCol=ColonneEnCours() <------- tjrs -1 bien que le champ soit une table :-@ FIN SI {cChampAppelant}..Type=typComboAVS OU {cChampAppelant}..Type=typComboSNS ALORS ListeModifie(cChampAppelant,gLien(dDate)+DateVersChaine(dDate),1) ListeSelectPlus(cChampAppelant,1) SINON SI {cChampAppelant}..Type=typTable ALORS {cChampAppelant}[IndiceEnCours()][eCol]=dDate SINON cChampAppelant=dDate FIN FIN
Peut être ai-je raté quelque chose. Merci de vos lumières.
-- Pascal Ferracci efpé
efpe@efpe.biz
Effectivement je n'avais pas pensé à l'évènement clic droit sur la table. C'est le fait de gérer aussi bien l'appui ou le relachement de touche ou de bouton de souris sur la table et non sur la colonne qui m'a perturbé. Et pourtant j'avais capté pour l'appui sur une touche. Merci
-- Pascal Ferracci efpé
efpe@efpe.biz |
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|