A mi me pasa exactamente los mismo que describe Germán. ¿No será una limitante de la versión no registrada? :p
// Saludos |
Hola,
Gracias Román y Neftalí. Pero, un momento... ¿es que no describís lo que se espera "por defecto"? Es decir, si no he entendido mal, Neftalí, dices que si seleccionas "unas letras" (un texto) y pulsas la tecla "Suprimir" sí que te funciona, y, si no seleccionas nada, no te funciona... ¿pero es que no se trata de que funcione, precisamente, cuando tienes texto seleccionado? Claro que ahora no comprendo cómo es que vosotros "esperáis" otra cosa... |
Si no hay texto seleccionado, el comportamiento esperado es que se borre el caracter a la derecha del cursor.
// Saludos |
Cita:
El hecho de que, si tan sólo hay una tecla seleccionada ya funcione, me hace dudar de que sea problema de la tecla, sino de alguna comprobación relacionada con Seltext o LenghtText... Es más la tecla la reconoce, pues si hay algo seleccionado se comporta bien. |
Hola,
Cita:
|
Cita:
|
Hola, lo he instalado en una máquina virtual (virtualbox) winxp y el comportamiento es exactamente el mismo que obtiene Neftali.
|
Cita:
|
Hola de nuevo,
Si no me equivoco, la tecla que nos interesa es "VK_DELETE"... ¿verdad? Estoy probando... pero con esta tecla. Yo creo que es esta tecla... ¿no? :rolleyes: |
¿No será un bug del componente? Me suena que ese comportamiento no debe ser algo que tengas que configurar tú. Ese debería ser el comportamiento estandard, como si pones un TEdit.
|
Al parecer, alguien, alguna vez, reportó este problema, pero no pareció importarles mucho o no le dieron seguimiento porque quien lo reportó tampoco lo hizo. Quizá si lo reportas tú te hagan caso. No debe ser un problema difícil de solucionar.
// Saludos |
:eek::eek::eek::eek:
¿Y ya está? No me parece un error tonto... Un editor al que lo le funciona la tecla,... no se... |
Bueno, bueno. Ésa es la interpretación que yo dí :p Igual ellos estuvieron muy consternados en su momento :D
// Saludos |
Hola,
Lo que pasa es que acaso no es un bug... me explico. En realidad, por ejemplo, si se pulsa las teclas "CTRL + ←" se borra la palabra "cerca del cursor". Lo cierto es que existen otros comandos, ahora mismo "ocultos", puesto que no se conocen, pero, que, funcionan. He aquí el método que los añade:
He tratado de asignar a la tecla suprimir alguno de los comandos "ecDelete*", pero, sin éxito. No sé si es que lo estoy haciendo mal, o que, dicha tecla no puede usarse, o que está ocupada con otra cosa... lo cierto es que el reporte que enlaza Román es raro, pues alguien puso "Work for me" y cerró el caso. Voy a seguir dándole alguna vuelta, aunque, como digo. |
Hola,
Llevas razón Neftalí, sin embargo, se conoce que ya puede hacerse lo que se pretende (borrar el caracter, la palabra, etc., cerca del cursor) con otra combinación de teclas... si no me equivoco. De todas formas sigo dándole vueltas a ver qué pasa, porque, lo cierto es que la tecla funciona como decís hasta en el bloc de notas... |
Hola,
Estoy es muy raro... a ver. Al parecer, el comando que nos interesa es "ecDeleteChar". Ahora bien, dicho comando se añade al editor, junto con otros de esta forma:
Valiendo la constante "SYNEDIT_DELETE" "VK_DELETE", es decir,... en principio el asunto debería funcionar... pero no lo hace. La cosa es que yo no estoy capturando la tecla "VK_DELETE" en ningún lado... así que se supone que debería funcionar, pero, no lo hace... y tampoco lo hace si yo mismo añado la tecla "VK_DELETE" asociada al comando "ecDeleteChar"... esto es muy raro, porque, las otras teclas funcionan... Edito: vamos a ver si al final damos con ello... |
Pero, tal como comentó Neftali, la tecla sí que está asignada. Más bien parece ser un problema con la longitud del texto seleccionado. En algún lugar del código debe tener un condicional:
Haz una traza a ver qué sale. // Saludos |
Hola,
A ver. Novedades. No es problema del componente, porque, si pruebo en un programa "nuevo", la tecla se comporta como se espera. Me temo que alguna acción en mi programa está "comiéndose" dicha tecla... así que voy a echar un vistazo porque esto tiene que poder solucionarse. ;) |
Cita:
|
Hola,
Ea, pues ya está. Se trataba de que he usado la acción de edición estándar "Delete", y, de alguna manera, dicha acción estaba interfiriendo con el comando "ecDeleteChar" del editor. De momento he optado, sencillamente, por quitar dicha acción, pues, se trataba de un elemento en el menú contextual del editor que acaso hasta estuviera demás, teniendo en cuenta que uno pulsa la tecla "Suprimir" y no usa dicho elemento del menú. No obstante, acaso añada el elemento cuando aprenda a enviar comandos al editor como ha de hacerse. Sea como sea, podéis descargar el programa de nuevo y comprobar que ahora la tecla "Suprimir" se comporta como vosotros esperábais, por un lado, y, también como yo esperaba... si hay texto seleccionado. Obviamente, esto de los comandos y "accesos directos" en el programa es algo a lo que tendré que prestar atención en el futuro. http://goo.gl/ATCSn ¡Muchas gracias a todos! |
Ya probé y funciona bien. De todas maneras, es raro. Pareciera que la acción se inhabilitaba al detectar que no había nada selecciondo.
// Saludos |
Cita:
|
¡Ah! Pues acabo de ver que la acción estándar de Delphi hace lo mismo, es decir, se inhabilita el DELETE cuando no hay texto seleccionado.
// Saludos |
He aquí al culpable:
Agrego: Y me atrevería a afirmar que es así, "por diseño": Cita:
// Saludos |
Hola,
Gracias Román. Lo que dices es interesante, y, sin embargo, aún me atrevo a decir que acaso exista un "error", y, es que la acción se "come" la tecla en cuestión. Si dejase pasar la tecla, después de hacer su trabajo, el editor podría hacer el suyo. Pero no parece ser así. Claro, ahora que lo pienso, en realidad la tecla funciona... pero sobre un elemento "deshabilitado"... en fin. En este caso no tiene importancia, pues, como digo, para la acción suprimir, ¿quién usaría el elemento del menú? Yo creo que nadie... |
^\||/^\||/^\||/^\||/
Correcto. Gracias David. |
Hola,
¡Gracias a todos vosotros! ;) |
Cita:
O sea que, aún cuando redefinamos UpdateTarget para que no se inhabilite la acción, también tendríamos que redefinir ExecuteTarget puesto que ClearSelection actúa sobre la selección. Y con esto ya nos cargamos toda la acción :D // Saludos |
Hola,
No; si, por eso digo... con "error" me refiero a que, parece ser, Delphi no "respeta" el comportamiento de la tecla "Suprimir"... aunque, para ser sincero, yo siempre he utilizado dicha tecla para eliminar el texto seleccionado, y, más aún, no uso dicha tecla, porque, suelo "cortar" el texto, directamente. Sin duda una tontería porque la tecla está ahí y "es menos" que pulsar "CTRL + X", pero, es la costumbre. En todo caso digo que no es que la VCL tenga ahí un error (Dios me libre de encontrar un error en la VCL), pero, que acaso no se implementa dicha acción "como algunos pueden esperar"... |
Cita:
Pero a ver, aclaremos. Dudo mucho que alguien nunca le ocurra tener que borrar el carcater a la derecha. Y, por otro lado, lo usual en un editor es que CTRL+X no borre el caracter a la derecha. CTRL+X es el equivalente a CTR+DEL, no a DEL. Por otra parte, si bien, como dices, serán pocos los que usen el menú para borrar el caracter a la derecha, creo que cualquier editor de texto trae la opción. Y no es difícil implementarla usando una acción no estándar o redefiniendo la estándar. // Saludos |
Buenas, vengo con un fallo.
En cuanto instalo el programa, al final de la instalacion, con la opcion de arrancar el programa una vez finalizada la instalacion, me aparece una ventana de ayuda y otra de version del programa. Cuando intento cerrar la ventana de ayuda, se cierra pero se abre otra y la cierro y se abre otra vez, asi 3 veces, a la cuarta se cierra totalmente, pero voy a intentar mover la ventana del programa y veo que el programa se "ha colgado". Supongo que es algun error con el lanzamiento del programa desde el instalador a la vez que muestra la ventana de ayuda. Cuando arranco el programa me vuelve a aparecer lo mismo, pero esta vez cierro la ventana de la version del programa y luego puedo cerrar la ventana de ayuda y me aparece la ventana del programa correctamente. Por cierto, los archivos codificados en UTF-8 me los sigue abriendo como ANSI... He probado con un ".java" con comentarios en japones y me lo abre en ansi. Supongo que es porque no contiene el identificador BOM... Deberia de poder elegir el metodo de codificacion de entrada predeterminada si no detecta codificacion :D |
Cita:
|
Cita:
|
Cita:
|
La prueba que yo he hecho ha sido en una virtualbox winxp, y entre ventana y ventana saltaba un mensaje del antivirus preguntando si dejaba ejecutar al programa.
|
Hola,
¡Saludos a todos! Ahora mismo no puedo responderos, pero, prometo hacerlo a lo largo del día de hoy. ;) ¡Muchas gracias por vuestra comprensión! |
Hola a todos,
Bueno. He actualizado el programa de manera que vuelve a incluir en el menú contextual del editor el elemento "Delete", pero, esta vez con los resultados esperados. En realidad se trata de ejecutar sobre el editor el comando que se mencionó arriba, de manera que queda algo así:
Por lo demás, me siento un poco avergonzado, porque, aunque el problema se encontraba en la acción estándar de Delphi, lo cierto es que yo, sin saberlo hasta hace un rato, estaba usando el evendo "OnUpdate" de dicha acción para habilitarla o inhabilitarla, principalmente, de cara al propio programa (¿existe algún editor "seleccionado"?), pero, también estaba mirando, de existir el editor, si había texto seleccionado o no... en fin. Respecto de la ayuda no sé muy bien qué decir. En realidad estoy ejecutando una acción de la unidad "Winapi.Windows" y de nombre "HtmlHelp". Es cierto que la ventana de ayuda se liga de alguna manera al programa, por ejemplo, si este se cierra y la ventana de ayuda está abierta, se cerrará también. Pero, lo cierto es que yo no he podido comprobar el fallo que decís, y, no sé muy bien a qué puede deberse ahora mismo. Se supone que el programa muestra la ayuda "la primera vez que se ejecuta", después de una instalación, Y, así ocurre en mi sistema, al menos. Así que tendré que dar alguna que otra vuelta sobre este asunto, porque, ahora mismo no sé a qué puede deberse. ¡Muchas gracias a todos! |
Hola de nuevo,
Cita:
Tal vez me equivoque, pero, me estoy dando cuenta de que con esto de los editores hay cierta incompatibilidad, que, se soluciona... usando el mismo editor, siempre que sea posible, claro está. Esto viene a lo de arriba: si abres un archivo que el editor no reconoce correctamente, échale tú una mano cambiando la codificación, de manera que después dicha codificación sea reconocida sin problemas por el programa, puesto que él mismo la estableció. Supongo que esta solución no te satisfará del todo, pero, es que ahora mismo no se me ocurre otra, si te digo la verdad. :rolleyes: |
Hola a todos,
Sobre el tema de la ayuda, he tratado de solucionarlo de dos formas. En primer lugar, ahora la ayuda (si es menester) se muestra un poco después, esto es, dejo que se inicializen ciertas cosas, por ejemplo, las posiciones del formulario principal así como el tema en uso. Además, he dejado de utilizar cierta función "SetForegroundWindow" que tal vez estuviera haciendo más mal que bien. Tal vez queráis echar un vistazo a ver si os sigue fallando el asunto... ¡Gracias a todos! |
Bien! ahora ya me funciona correctamente lo de cerrar la ventana de la ayuda :D.
Otra cosa (me vas a odiar de tanto sacar pegas :)): -Cuando registras el programa no sale ninguna ventana de "gracias por registrar el programa". Como confirmación sería estupendo ponerla ;) -Al intentar cargar un fichero .avi de 350Mb, me dice obviamente "si quiero cargarlo". Le digo que si, y se queda un bueeen rato bloqueado (supongo que intentando leerlo), en ese rato el programa está bloqueado, luego me saca el mensaje de "Out Of Memory", estaría bien que tubiera una barra de progreso junto a un botón de cancelar ;) -Y igual es demasiado, pero que leyera los ficheros grandes por bloques (no todo a la vez, si no secuencialmente). Ya se sabe que los usuarios son capaces de abrir una imagen .iso de 16Gb con el notepad... -Lo mismo me ocurre con ficheros .java de mas de 100Kb, el programa se "congela" sin permitir movimiento de la ventana. Lo de los ficheros .java con UTF8, he intentado cambiar la codificacion desde el menu derecho, pero no pasa nada, no cambia de codificacion. |
La franja horaria es GMT +2. Ahora son las 04:37:16. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi