Bonjour,
Voici une astuce pour utiliser un champ ascenseur vertical dans une fenêtre plus petite que l'écran afin de déplacer tous les champs vers le haut, même les champs en bas et hors de fenêtre.
Le code doit être placé dans la section < A chaque modification de ASC_Ascenseur1... > du champ ascenseur.
Attention ! il faut que les champs soient initialisés selon leur création. Menu principal > Fenêtre >> Editer l'ordre d'initialisation (Ne pas confondre avec l'ordre de navigation.)
Le champ ascenseur doit être impérativement le premier champ initialisé dans la liste. Pourquoi le premier ?... par ce que seuls les autres champs seront déplacés, l'ascenseur lui ne fait pas partie des champs énumérés, l'énumération commence depuis le deuxième champ.
Dans l'exemple de code, j'ai nommé comme fenêtre et ascenseur; "FEN_Dossier" - "ASC_Asenceur1"
Bonne utilisation....
...
Voici une astuce pour utiliser un champ ascenseur vertical dans une fenêtre plus petite que l'écran afin de déplacer tous les champs vers le haut, même les champs en bas et hors de fenêtre.
Le code doit être placé dans la section < A chaque modification de ASC_Ascenseur1... > du champ ascenseur.
Attention ! il faut que les champs soient initialisés selon leur création. Menu principal > Fenêtre >> Editer l'ordre d'initialisation (Ne pas confondre avec l'ordre de navigation.)
Le champ ascenseur doit être impérativement le premier champ initialisé dans la liste. Pourquoi le premier ?... par ce que seuls les autres champs seront déplacés, l'ascenseur lui ne fait pas partie des champs énumérés, l'énumération commence depuis le deuxième champ.
Dans l'exemple de code, j'ai nommé comme fenêtre et ascenseur; "FEN_Dossier" - "ASC_Asenceur1"
Bonne utilisation....
Code :
i est entier
// Valeur du multiplicateur à voir selon le nombre de champ sur la hauteur, ici 5 (voir 10 pour plus).
h est un entier = 5
sNomChamp est une chaîne
sNomFenêtre est une chaîne = "FEN_Dossier"
// Le premier champ initialisé de la fenêtre étant l'ascenseur on
// commence à énumérer depuis le deuxième champ de la fenêtre
i=2
sNomChamp = EnumèreChamp(sNomFenêtre, i)
TANTQUE sNomChamp <> ""
// On déplace tous les champs selon la valeur de l'ascenseur
{sNomChamp}..X = {sNomChamp}..XInitial
{sNomChamp}..Y = {sNomChamp}..YInitial - (ASC_Ascenseur1) * h
// Champ suivant
i++
sNomChamp = EnumèreChamp(sNomFenêtre, i)
FIN
Se souvenir et savoir sont deux choses différentes. Se souvenir, c'est garder en mémoire. En revanche, savoir signifie assimiler sans dépendre d'un modèle.
WD 4.1 => 23
WD 4.1 => 23