Discussion:
form - gerer correctement le resize
(trop ancien pour répondre)
EBille
2010-05-15 20:03:52 UTC
Permalink
Re bonjour,
Je ne bosse qu'une fois par an sur mon appli fox... encore quelques
heures de boulot et vous êtes tranquilles pour un an :o)
Pour gérer le redimensionnement de mes écrans de saisie, j'ai posé la
classe resizable de _controls.vcx sur ma classe formbase dont héritent
tous mes forms de saisie. J'ai rajouté dans la methode resize_event :
this._resizable1.adjustcontrols(). C'est tout !

J'ai l'impression que ça ne suffit pas, parce que, lorsqu'on clique
sur la case d'agrandissement plein écran, certains forms et leurs
controles sont redimensionnés correctement (mouais encore que c'est
loin d'être joli...) mais pour d'autres, le commandgroup de boutons
garde ses coordonnées et se retouve donc au beau milieu de la feuille
voire sous le grid (j'ai deux sortes de forms : une sorte avec labels
+textbox et commandgroup et une sorte avec labels+textbox, grid et
cmdgroup).
Est-ce qu'il faut du code supplémentaire pour les controles
commandgroup et grid ou bien ce la classe et la méthode au niveau du
form suffisent ?

Un peu d'aide et en particulier, la methode à appliquer pour obtenir
un redimensionnement correct de tous les contrôles, me permettrait
d'avancer.

D'une manière globale et pour en finir avec ça, y a t-il quelque part,
une doc "avancé" sur les forms dans VFP ?
Merci d'avance,
Cordialement,
Eb
eddymaue
2010-05-15 20:34:08 UTC
Permalink
Salut je te recommande de le faire toi même et non passer par cette
classe qui m'a toujours donné du fil à retordre.

si tu sousclasse et je crois l'avoir lu tout à l'heure, tu ajoutes dans
l'évennement form.resize un bout de code pour détecter que tu viens de
agrandir/rétrécir ton formulaire

define class Uneforme as form

p_lResize = .f.

proc Resize()


enddefine
Post by EBille
Re bonjour,
Je ne bosse qu'une fois par an sur mon appli fox... encore quelques
heures de boulot et vous êtes tranquilles pour un an :o)
Pour gérer le redimensionnement de mes écrans de saisie, j'ai posé la
classe resizable de _controls.vcx sur ma classe formbase dont héritent
this._resizable1.adjustcontrols(). C'est tout !
J'ai l'impression que ça ne suffit pas, parce que, lorsqu'on clique
sur la case d'agrandissement plein écran, certains forms et leurs
controles sont redimensionnés correctement (mouais encore que c'est
loin d'être joli...) mais pour d'autres, le commandgroup de boutons
garde ses coordonnées et se retouve donc au beau milieu de la feuille
voire sous le grid (j'ai deux sortes de forms : une sorte avec labels
+textbox et commandgroup et une sorte avec labels+textbox, grid et
cmdgroup).
Est-ce qu'il faut du code supplémentaire pour les controles
commandgroup et grid ou bien ce la classe et la méthode au niveau du
form suffisent ?
Un peu d'aide et en particulier, la methode à appliquer pour obtenir
un redimensionnement correct de tous les contrôles, me permettrait
d'avancer.
D'une manière globale et pour en finir avec ça, y a t-il quelque part,
une doc "avancé" sur les forms dans VFP ?
Merci d'avance,
Cordialement,
Eb
EBille
2010-05-16 16:45:57 UTC
Permalink
Bonjour,
Merci pour ta réponse.
Je ne parviens tout de meme pas à un résultat correct, mais j'ai
remarqué que celui qui me pose le plus de problèmes est le groupe de
boutons sous-classé. Lorsque j'ajoute un ensemble (mais pas un groupe)
de boutons dans la forme, il est repositionné avec le reste, lorsque
c'est un commandgroup sous classé il reste à la meme position left,
top sur la form redimensionnée. Je ne vais pas chercher plus
longtemps, il faut que je livre lundi.
Merci,
Eb
Jean à Grenoble
2010-05-16 18:49:00 UTC
Permalink
as-tu bien pensé à mettre DODEFAULT() dans la méthode resize si tu as
mis du code dans la sous-classe ?

A bientôt
Jean

Loading...