Réinitialisation du glissement de l'image d'arrière-plan du graphique personnaliséSalut,
Étant donné une zone graphique personnalisée avec une image d'arrière-plan et un script de poignée, existe-t-il un moyen d'empêcher l'utilisateur de faire glisser accidentellement l'image d'arrière-plan lorsqu'il manque la poignée ? Le problème que j'ai est que souvent, lorsque j'essaie de faire glisser la poignée, moi ou un autre utilisateur manquerons de cliquer et finirons par faire glisser l'image d'arrière-plan à la place. Il n'y a pas de moyen simple d'annuler cela, Ctrl+Z redimensionne simplement l'image à sa taille d'origine (et non à la taille de la zone graphique). Ma question est la suivante : existe-t-il un moyen de forcer une image d'arrière-plan dans une zone graphique à ne plus pouvoir être déplacée ? Ou, à défaut, existe-t-il un moyen de capturer Ctrl+Z pour annuler ce mauvais clic ? Dans le pire des cas, je peux ajouter un bouton, mais je ne veux pas de l'encombrement de l'interface utilisateur.
Exemple
img = New Image( "$SAMPLE_IMAGES/tile.jpg" );
scale_factor = 0.5;
curimg_scaled = img;
curimg_scaled << Scale( scale_factor );
{scaled_width, scaled_height} = curimg_scaled << Size;
XX=scaled_width/2;
YY=scaled_height/2;
gb = Graph Box(
<<ADD image=""> scaled_width,scaled_width,x<1,1,x); YY = If(y>scaled_height,scaled_height,y<1,1,y);, //mouseupscript -- mettre à jour les tracés de profil XX = Round( XX ); AA = Rond (AA ); // DO STUFF txt = Eval Insert( "(X,Y)=(^XX^,^YY^)" ); Imprimer(txt); tb_xy << Définir le texte ( txt ); ); Ligne H (AA); Ligne V ( XX ); ); Nouvelle fenêtre("Test",V List Box(gb,tb_xy=Text Box("")));</ADD>
Personnalisation de masseRe: Réinitialiser l'image d'arrière-plan du graphique personnaliséVous pouvez fermer à clé l'image.
img = New Image( "$SAMPLE_IMAGES/tile.jpg" );
scale_factor = 0.5;
curimg_scaled = img;
curimg_scaled << Scale( scale_factor );
{scaled_width, scaled_height} = curimg_scaled << Size;
XX = scaled_width / 2;
YY = scaled_height / 2;
gb = Graph Box(
<<ADD image=""> scaled_width, scaled_width,
x < 1, 1,
x
);
YY = If(
y > scaled_height, scaled_height,
y < 1, 1,
y
);,
//mouseupscript -- update profile plots
XX = Round( XX );
YY = Round( YY );
// DO STUFF
txt = Eval Insert( "(X,Y)=(^XX^,^YY^)" );
Print( txt );
tb_xy << Set Text( txt );
);
H Line( YY );
V Line( XX );
);
New Window( "Test", V List Box( gb, tb_xy = Text Box( "" ) ) );</ADD>Re: Réinitialiser l'image d'arrière-plan du graphique personnaliséMerci beaucoup Jeff! Cette option du message image est-elle documentée? J'ai dû le manquer.Re: Réinitialiser l'image d'arrière-plan du graphique personnaliséJ'ai commencé par faire un clic droit sur l'image pour voir s'il y avait une option de verrouillage.

Ensuite, j'ai cherché dans l'index de script (Aide-> Index de script) pour Lock, et je l'ai trouvé sur l'objet PictSeg.

J'ai ensuite expérimenté pour voir si je pouvais l'utiliser directement sur le message Ajouter une image () comme je vous l'ai montré ci-dessus.