lacouine
Messages postés33Date d'inscriptionvendredi 20 octobre 2000StatutMembreDernière intervention28 octobre 2004
-
23 juin 2004 à 09:28
lacouine
Messages postés33Date d'inscriptionvendredi 20 octobre 2000StatutMembreDernière intervention28 octobre 2004
-
2 juil. 2004 à 11:14
Bonjour,
Mon problème est simple mais à la fois compliqué... Cela fait 2 jours que je planche dessus sans pouvoir la parade. Si quelqu'un pouvait m'aider, je lui en serais reconnaissant.
Voila. Je lance une applet dans une nouvelle fenêtre (style pop up). Cette fenêtre est resizable. Lorsque je la redimenssionne manuellement, je redimenssionne mes controles dans mon applet (interaction javascript - java).
Cependant, j'obtiens mon ratio de redimenssionnement par le rapport de la hauteur initial de l'applet à la largeur fixée par la souris. Malheureusement, ne faisant rien du point de vue de la longueur, rien ne se passe lorsque je redimenssionne horzyzontalement. Or moi, je voudrais également redimenssionner ma fenêtre avec le même ratio ave la largeur initiale sur la longueur.
NB : Le problème est que je veux faire cette action sur la fonction RESIZE dans le javascript... Et par conséquent cela entraine un resize perpétuel... (Appel récursif) Et ça c'est très très bad...
Est-ce que quelqu'un pourrait me donner une petite astuce éventuellement, ce serait très sympa ?!? Chuss...
Voici mon code de la fenêtre de l'applet (ouverte en mode resizable sans les scrollbars) :
<HTML>
<HEAD>
<TITLE>Resizable Applet Demo</TITLE>
</HEAD>
<SCRIPT LANGUAGE="JavaScript">
var normalWidth=0;
var normalHeight=0;
function start(){
normalWidth=document.body.clientWidth;
normalHeight=document.body.clientHeight;
resize();
}
function resize() {
var w_newWidth,w_newHeight;
var w_maxWidth=1600, w_maxHeight=1200;
if (navigator.appName.indexOf("Microsoft") != -1){
w_newWidth=document.body.clientWidth;
w_newHeight=document.body.clientHeight;
}else{
var netscapeScrollWidth=15;
w_newWidth=window.innerWidth-netscapeScrollWidth;
w_newHeight=window.innerHeight-netscapeScrollWidth;
}
if (w_newWidth>w_maxWidth)
w_newWidth=w_maxWidth;
if (w_newHeight>w_maxHeight)
w_newHeight=w_maxHeight;
lacouine
Messages postés33Date d'inscriptionvendredi 20 octobre 2000StatutMembreDernière intervention28 octobre 2004 30 juin 2004 à 11:10
Bon.... je reviens cette fois-ci car je n'arrive pas à dévelloper une solution correcte et ce même avec un boolean de vérification...
Il semble qu'il y ait plusieurs demande de resize qui sont fait... Quelqu'un pourrait-il essayer de faire ce petit code de redimenssionnement...
Je rappelle que je souhaite juste redimenssionner la longueur d'une fenêtre lorsque celle ci a été redimenssionnée justement (suivant la largeur ou la hauteur). Le redimenssionnement se fait selon un ratio qui se calcule avec les dimenssionns initials....
Cf. Code ci-dessus... Merci de m'aider car là, je suis vraiment dans la panade...
Bonne continuation au forum...
Merci d'avance.
Anthony
Vous n’avez pas trouvé la réponse que vous recherchez ?
lacouine
Messages postés33Date d'inscriptionvendredi 20 octobre 2000StatutMembreDernière intervention28 octobre 2004 2 juil. 2004 à 11:14
Malheureusement, cela ne marche toujours pas comme je veux...
Je reprécise que ce que je désire faire c'est redimensionner la longueur proportionnellement en fonction de la hauteur...
De ce fait, il faudrait que j'intercepte seulement la dernière valeur (après mouseup) de la longueur... Et pour cela, l'évenement du body onresizeend était parfait... Cependant, il ne marche pas....
Du coup, j'essaie avec du bricolage comme ce que nous avons essayé de faire précédemment mais sans succes non plus, car cela ne redimenssionne pas ma page... la souris à la priorité du resizing... (vous voyez ce que je veux dire ?!?)
Si vous avez une autre hypothèse de travail... merci d'avance de me la poster...