Salut,
je suis en train de réaliser un GUI en scheme : en gros je fais une fonction avec un
let comme ci-dessous :
(define (lancer-app)
(let (
(w (new frame% ...
...
(combo-box (new choice% ... (callback (lambda (o e) (send t set-value "test" )))))
(t (new text-field% (...))
...
)
comment faire pour que ça marche ? parce que la il dit lorsque l'on change la combo qu'il
ne connait pas "t", le text-field du dessous...
Le problème c'est que le text-field doit forcément être déclaré après la combo pour des
raisons de positionnement...
Dois-je donc abandonner ma fonction avec let et tout passer dans des define ?
(define w (new frame% ...)) ?
merci
ANT
PS : autres question moins importantes...
- text-field% : comment ne pas faire un backspace quand on appuie sur Delete ? mais bel et bien un delete...
- comment traduire (define vec3 list) en macro ?
pour l'instant j'ai fait ça mais c'est moins bon je trouve :
(define-macro (vec3 x y z) (list 'list x y z))
j'aimerais pouvoir mettre autant de coord que je veux...
- voila comment je récupère la largeur & hauter d'un canva
(let ...
(c-width (let-values (((dc-w dc-h) (send canva get-client-size)))
dc-w))
(c-height (let-values (((dc-w dc-h) (send canva get-client-size)))
dc-h))
...)
on voit ici 2 fois le même appel, on peut améliorer ça ?