FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Agregar y Arrastrar como en Tiempo de Diseño?
Foro, mi duda y consulta es la siguiente ¿se puede agregar un edit (cajita de texto) y arrastrarlo por el formulario cuando un programa esta en ejecucion ¿Como? alguna idea ¿ puede implementarse ? si pueden un ejemplo sencillo y cortito.
Un Abrazo. |
#2
|
||||
|
||||
Supongo que habrá mejores formas de hacerlo, pero puedes utilizar las propiedades y eventos relacionadas con arrastrar y soltar (propiedades Drag... y OnDrag...).
Aquí te pongo un ejemplo muy sencillito:
(Para que el ejemplo funcione tienes que poner la propiedad DragMode del componente Edit1 a dmAutomatic). Saludos! P.D: Se me había pasado que tambien preguntabas el tema de "agregar", para ello tendrías que crear el componente en tiempo de ejecución (lo único es que tendrías que decidir cuando "crearlo"). Última edición por jmariano fecha: 31-01-2006 a las 13:23:58. |
#3
|
||||
|
||||
En cualquiera de éstos dos hilos (por no buscar más) puedes ver cómo se crea un TEdit en ejecución:
http://www.clubdelphi.com/foros/showthread.php?t=20088 http://www.clubdelphi.com/foros/showthread.php?t=19465 También tienes demos de cómo crear controles en ejecución aquí. Para moverlo en ejecucion puedes hacerlo como te han dicho o utilizar éste componente de mi Web TSelectOnRuntime, que sirve justo para eso, para mover y redimensionar componentes en ejcución; Puedes descargarlo junto con la demo de aquí.
__________________
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. |
#4
|
|||
|
|||
lo he probado yyyyyyyy?
Hola de nuevo he probado lo de Jmariano y nada la cajita de texto se queda en su lugar , no puedo arrastrarla por el formulario y tampoco puedo cambiarle su tamaño¿ que podra ser?
Un Abrazo |
#5
|
||||
|
||||
Hola,
El código de Mariano debería ir bien para cambiar la posición del "TEdit" con el ratón, arrastrándolo por el formulario. Pero, en todo caso, después de probar el componente que refiere Neftalí creo que podría irte bastante bien. ¿Lo comprobaste? |
#6
|
||||
|
||||
Cita:
De todas formas, como te dice dec, fíjate en el componente de Neftali que es más completo. Saludos! |
#7
|
|||
|
|||
ok, ahora si
Ahora si marcha bien lo de Jmariano, lo que me queda es por cambiarle el tamaño tambien al edit ¿Como?. El tema es que no puedo incorporar componentes, si no ya tendria resuelto todo. Gracias por el tiempo dedicado.
¿ahora como puedo cambiarle el tamaño? Un Abazo. |
#8
|
||||
|
||||
Cita:
Utiliza el CTRL + las flechas para modificar el tamaño.
__________________
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. |
#9
|
|||
|
|||
anda pero........
Anda con las teclas pero debo de hacerlo con el mouse (agrandarlo)por que asi me lo han solicitado, que va a hacer yo no mando. Espero me puedan respomder.Gracias
|
#10
|
||||
|
||||
Hola,
A ver. El componente escrito por Neftalí y que él mismo te refiere más arriba hace exactamente lo que precisas. Como el componente es de código abierto bien podrías estudiar su funcionamiento. ¿Porqué no echas un vistazo al componente susomentado de una vez por todas y nos dices qué tal te va con el mismo? O, cuando menos, dínos, pues mira, he mirado el componente de Neftalí pero, no me va bien por esto, por esto y por esto otro. Porque, ya te digo, teniendo tan a la mano una posible solución a tu problema no entiendo por qué no la miras siquiera... ¿o es que la miraste ya, que es lo que digo, y no te sirvió? |
#11
|
||||
|
||||
Esto mas bien parece una tarea del colegio que un requerimiento de un programa normal... yo diría que ya tenes suficiente información para hacerlo por tu cuenta. ... ¿no?
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#12
|
|||
|
|||
Casi todo ok...
Estimados les comento que chequee el componente y ahora todo marcha ok,
lo unico es que cuando cambio de tamaño y lugar los componentes estos cambios no permanecen en el formulario, es decir lo cierro y cuando vuelvo a ejecutarlo los componentes esatan en el lugar original ¿Como guardo la distribucion y el tamaño de los componentes en el formulario? Gracias y Un Abrazo. |
#13
|
||||
|
||||
Lógicamente, todos los cambios que hagas sobre posición y tamaño estarán sólo almacenados en memoria (de ahí que se pierdan al salir del formulario), por lo que tendrás que almacenarlo en algún medio "no volátil", como un archivo en el disco duro, por ejemplo.
Para ello puedes utilizar la clase TStringList que te permite almacenar y cargar fácilmente cadenas de texto o utilizar las funciones que posee Delphi para almacenar y recuperar el estado (o recursos) de un objeto o componente. Te pongo un ejemplo que viene en la ayuda de Delphi para "convertir" un componente a cadena de caracteres y viceversa:
(Consulta la ayuda de Delphi si tienes dudas de lo que hace ambos procedimientos porque está mu' bien explicado) Saludos! |
#14
|
||||
|
||||
las jedi tienen gestores de persistencia de propiedades que podes almacenar en archivos ini, el registry, xml o una base de datos.
Si te interesa, mirá los compoentes de la paleta Jv Persistence
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#16
|
|||
|
|||
ok, esta bueno
Estimados gracias a todos por ocuparse de este tema.
Un Abrazo |
#17
|
|||
|
|||
Habria algo de esto para D5 ??
Gracias Marcial |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
en Rave como agregar un direct data view? | Pascual Montes | Impresión | 2 | 08-06-2005 02:45:04 |
agregar una atributo en tiempo de ejecución | seken | Conexión con bases de datos | 6 | 21-10-2004 23:21:03 |
Como agregar una banda en tiempo de ejecucion en otra pagina | edo | Impresión | 2 | 29-07-2003 01:07:12 |
Como configurar un alias en el DataBaseDesktop, pero por codigo (tiempo de ejecución) | hhuillcen | Conexión con bases de datos | 1 | 14-06-2003 06:16:45 |
Agregar una impresora en tiempo de ejecucion | fanon | Impresión | 1 | 26-05-2003 10:16:20 |
|