PC SOFT

PROFESSIONAL NEWSGROUPS
WINDEVWEBDEV and WINDEV Mobile

Home → WINDEV 2024 → bis : Validation quand l'ascenseur vertical est en bas (Courlis)
bis : Validation quand l'ascenseur vertical est en bas (Courlis)
Started by s.sgame, Apr., 14 2006 8:03 AM - 3 replies
Posted on April, 14 2006 - 8:03 AM
Bonjour,

J'ai déjà posé cette question.
Je n'ai pu tester les réponses que maintenant et mon problème existe toujours.

Dans un CHAMP DE SAISIE, defini comme suit :

_ multiligne
_ de largeur 350
_ de hauteur 200
_ contient un texte dont on en aperçoit environ 25%
_ mise en forme RTF

_ avec ASCENSEUR VERTICAL


je souhaiterai connaitre la valeur de la position du curseur de l'ascenseur.
J'ai cherché et aucune des caratéristiques de ce champ ne me donne une réponse.
Je précise bien c'est un champ de saisie avec ascenseur et non pas un ascenseur seul.
Y a-t-il une astuce ?
PcSoft le fait avec ses CGV lors de l'installation de Windev.

Merci de votre collaboration et surtout de vos idées.
Posted on April, 14 2006 - 1:16 PM
Il me semble que PCSOFT l'avait montré en exemple sur une LST il y a quelques Temps peut être en version 7
Posted on April, 14 2006 - 1:18 PM
voir avec la LST 59 WD8 Licence . Le code que tu cherches est peut être dedans.
Posted on April, 14 2006 - 1:31 PM
C'est encore moi. Voici le code dont je te parlais précédemment


nTexteHauteur est un entier
nNbLigne est un entier
nPos est un entier
pnMin, pnMax sont des entiers
SB_VERT32 est un entier = 1


// Récupération de la position dans le champ licence
nPos = AppelDLL32("USER32","GetScrollPos",Handle(:sNomChampLicence),SB_VERT32)
AppelDLL32("USER32","GetScrollRange",Handle(:sNomChampLicence),SB_VERT32,&pnMin,&pnMax)

// Calcul du nombre de lignes qui peuvent être affichées dans le champ
nTexteHauteur = TexteHauteur(:sNomChampLicence, "Test Hauteur")
nNbLigne = PartieEntière({:sNomChampLicence}..Hauteur / nTexteHauteur) -1

// On décompte la page en cours de visualisation
pnMax=pnMax-nNbLigne

// Activation du bouton qui a été donné au constructeur si bas du champ atteint
SI nPos>=pnMax ALORS {:sNomBoutonAActiver, indChamp}..Etat = Actif