FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Una ayudita con TShape
Hola Amigos de la comunidad de Delphi! hoy los molestos para preguntarles sobre los Tshape!, bueno para ser mas espesifico, necesito que me ayuden con esto.. estoy creando graficos en tiempo de ejecucion por medio de Shapes pero necesito saber como hago para que cuando seleccione un shape ese le salga un recuadro para que me indique que esta seleccionado y se diferencie de los demas! si se puede un recuadro asi como el que aparec en tiempo de diseño! para agrandarlo y moverlo
__________________
La vida es un simple pero complejo If J=rS
|
#2
|
||||
|
||||
Hola,
Tal vez algo como esto te de alguna pista: Se trata de que todos los "TShapes" compartan el evento MouseDown. Arriba se puede apreciar cómo estamos pendientes de que el usuario halla hecho clic con el botón izquierdo del ratón en un "TShape". "Inizializamos" entonces todos los componentes "TShape" dándolos un ancho de lapiz igual a uno. A continuación, al "TShape" que disparó el evento que tratamos le damos un ancho de lapiz un tanto mayor. De ese modo se puede observar a simple vista el "TShape seleccionado". Si juegas con la propiedad "Style" del lapiz ("Pen") de los "TShape" quizás puedas lograr distintos efectos, y no solamente el que se ha referido aquí. Actualización: En el archivo que adjunto puedes ver lo dicho "funcionando" . Última edición por dec fecha: 13-07-2005 a las 22:38:53. Razón: (actualización) |
#3
|
|||
|
|||
Muchas Gracias amigo Dec, pero lo que pasa es que yo en tiempo de ejecucion selecciono un shape le cambio el Grozor a la linea del shape (Sender as TShape).canvas.pen.whith:=X
y tambien le cambio el color y el tamaño, entonces necesito algo como que me identifique que en ese momento estoy seleccionando ese Shape! algo como un recuadro que bordee el Shape. como el cuadro de mover un objeto en tiempo de diseño .. Pero Muchas gracias por tu ayuda amigo (y) estamos en contacto!!!
__________________
La vida es un simple pero complejo If J=rS
|
#4
|
||||
|
||||
Puedes detectar el evento OnMOuseDown, para dibujar un rectangulo gris sobre el objeto seleccionado.
Luego lo vas desplazando de acuerdo al movimiento del mouse En el evento OnMouseUp, desplazas el objeto igual cantidad que el movimiento relativo del mouse
__________________
[Crandel] |
#5
|
||||
|
||||
A ver si ésta modificación te es más útil...
Es un cambio respecto al ejemplo de dec, básicamente es lo mismo, pero en lugar de modificar el borde se pintan marcas... Si asignas el evento al resto de controles, como el Form (en el ejemplo está así te servirá para "deseleccionar")
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. Última edición por Neftali [Germán.Estévez] fecha: 30-05-2007 a las 14:17:39. |
#6
|
||||
|
||||
Hola
Aqui te mando un ejemplo, sobre como crear componentes en tiempo de ejecución y al ocurrir un evento saber cual de todos fue seleccionado. En el ejemplo utilizo labels pero con esa idea podrias aplicarlo a los shapes o cualquier componente que crees en tiempo de ejecución y mejorar lo que ya te pasaron. Espero te sirva |
#7
|
|||
|
|||
Muchas Gracias Neftali la seleccion por marcas era exactamente lo que estaba buscando MUCHISIMAS GRACIAS
__________________
La vida es un simple pero complejo If J=rS
|
#8
|
|||
|
|||
Caro Muchas gracias por ayudarme!! pero la seleccion por color no me sirve porque yo tambien le cambio el color a mis objetos en tiempo de ejecución entonces tenderia a confundir!!! Pero igualmente Muchisimas gracias por colaborar (k)
__________________
La vida es un simple pero complejo If J=rS
|
#9
|
|||
|
|||
Cita:
yo tengo un problema parecido, no se como implemetar esto: circulos.OnMouseDown:= circulosMouseDown( 'no se q parametros van a qui' ) ya le intente de varias formas y no me sale, ojala me puedan orientar con esto |
|
|
|