Restablecer arrastre de imagen de fondo de gráfico personalizadoHola,
Dado un cuadro de gráfico personalizado con una imagen de fondo y un script de identificador, ¿hay alguna manera de evitar que el usuario arrastre accidentalmente la imagen de fondo cuando pierde el identificador? El problema que tengo es que con frecuencia, al intentar arrastrar el controlador, yo u otro usuario no hacemos clic y terminamos arrastrando la imagen de fondo. No hay una manera fácil de deshacer esto, Ctrl+Z simplemente cambia la escala de la imagen a su tamaño original (no al tamaño del cuadro del gráfico). Mi pregunta es la siguiente: ¿Hay alguna manera de forzar que una imagen de fondo en un cuadro de gráfico no se pueda arrastrar? O, en su defecto, ¿hay alguna forma de capturar Ctrl+Z para deshacer este error de clic? En el peor de los casos, puedo agregar un botón, pero no quiero el desorden de la interfaz de usuario.
Ejemplo
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=""> ancho_escalado, ancho_escalado,x<1,1,x); YY = If(y>scaled_height,scaled_height,y<1,1,y);, //mouseupscript - actualiza los gráficos del perfil XX = Round( XX ); AA = Redondo(AA); // HACER COSAS txt = Eval Insert( "(X,Y)=(^XX^,^YY^)" ); Imprimir(texto); tb_xy << Establecer texto (txt); ); Línea H (AA); Línea V( XX ); ); Nueva ventana("Prueba",V List Box(gb,tb_xy=Text Box("")));</ADD>
La personalización en masaRe: Reinicio de arrastre de imagen de fondo de gráfico personalizadoUsted puede bloquear la imagen.
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: Reinicio de arrastre de imagen de fondo de gráfico personalizado¡Muchas gracias Jeff! ¿Está documentada esa opción para el mensaje de imagen? Debo haberlo perdido.Re: Reinicio de arrastre de imagen de fondo de gráfico personalizadoComencé haciendo clic derecho en la imagen para ver si había una opción de bloqueo allí.

Luego busqué Lock en el índice de secuencias de comandos (Ayuda-> Índice de secuencias de comandos) y lo encontré en el objeto PictSeg.

Luego experimenté para ver si podía usarlo en el mensaje Agregar imagen () directamente como le mostré arriba.