FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Deshabilitar Drag and Drop de TEdit
Buenas Tardes Chicos.
Primero y como siempre, gracias por tomaros la molestia de dedicar 5 minutos a este tema. Tengo un TEdit, el cual tengo controlado en OnKeyPress que solo se introduzcan números y una coma, ya que posteriormente este valor es sumado a otros tantos y sólo puede contener un valor numérico. Para evitar la acción de pegar, por si el contenido del portapapeles no es numerico, he deshabilitado con OnKeyDown las teclas Crtl+V, es decir, la acción de pegar. Ahora se me presenta otro problema, el drag&drop, porque si alguien arrastra un contenido no numerico a este edit, me lanza el error de que no es Float, ya que la suma se hace en el evento OnEditingDone. He probado a poner Edit1.Clear en los eventos OnStartDrag, OnEndDrag, OnDragDrop... pero sigue aceptando el contenido arrastrado. Hay alguna manera de controlar esto o deshabilitarlo de este edit o directamente del formulario entero? Mil gracias por vuestra siempre útil ayuda. Un abrazo. |
#2
|
||||
|
||||
Hola Jovalca.
Tal vez esté interpretando mal la situación, pero ¿ No te sirve usar el evento OnDragOver del TEdit ?
Saludos
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#3
|
|||
|
|||
Hola de nuevo ecfisa.
No, eso también lo probé y no funciona, sigue aceptando arrastrar el contenidos. He pensado que es posible que el error venga de mi sistema operativo aunque no puedo estar seguro. Se me ha ocurrido que quizá podría controlarlo, ya que no puedo con esos eventos, con el evento OnChange, hacer de algún modo que al cambiar el contenido del Edit, si detecta que no son números, comas y puntos, se borre el edit. Esto se podría hacer? Gracias y Saludos. |
#4
|
||||
|
||||
Hola,
¿Por qué no usas un "SpinEdit"? Este componente es similar a un "TEdit" pero su contenido ha de ser numérico. Tal vez incluso algún otro componente que no recuerdo ahora mismo hace lo mismo. Incluso el "TEdit" podría tener alguna propiedad de tipo "máscara" para que sólo admita números, digo, sin necesidad de codificar nada. |
#5
|
|||
|
|||
Gracias por vuestras respuestas.
Conozco el componente, pero ya tengo la aplicación casi terminada y el reemplazar ahora todos los edit con estas características sería una locura. Para próximas tomo nota. Para hacer lo que comentaba, si al cambiar detecta texto en vez de numero, que vacíe el tedio tengo algo como esto. Código:
if ( StrScan('0123456789,.') = nil ) then Edit1.Clear; Gracias de nuevo y un saludo. |
#6
|
|||
|
|||
Yo creo que te falta un parametro en el StrScan o bien la comillas estan mal puestas:
Deberias poner
Saludos Última edición por adrall fecha: 22-06-2014 a las 19:09:51. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
drag and drop TLabel a TEdit | Colifo_ | Varios | 2 | 12-10-2010 05:28:53 |
Drag and Drop... | dvlt | .NET | 0 | 07-02-2008 09:42:59 |
Drag & Drop | DanForever | Varios | 2 | 01-06-2006 14:24:25 |
Drag & Drop Tedit? | Carlos Arevalo | Varios | 3 | 08-11-2003 17:02:57 |
Drag&Drop | xflo | Lazarus, FreePascal, Kylix, etc. | 0 | 13-10-2003 19:31:22 |
|