FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Escribir caracteres "box drawing" en Delphi 10.3
Hola,
Estoy intentando escribir caracteres "box drawing" en un TMemo. O sea, caracteres de los que sirven para dibujar cajas: └ ├ El problema es que en el editor de Delphi no me funciona el antiguo recurso de teclear Alt-192 (└) que aún funciona, por ejemplo, en este mismo editor de mensajes o en Google Chrome. Si lo intento en el editor de Lines del TMemo me escribe otros caracteres. Sabéis cómo puedo conseguirlo? Gracias por vuestra atención. |
#2
|
||||
|
||||
Seguramente porque ahora es unicode, utf8.
Mira este enlace con la tabla. |
#3
|
||||
|
||||
Creía que, por defecto, Delphi apostaba por UTF-16. ¿Cambiaron de idea?
|
#4
|
||||
|
||||
No sé, borré la "máquina virtual" donde instalé la versión última para probarla.
|
#5
|
|||
|
|||
Creo que Delphi 10.3 (mi versión) utiliza UTF16
He encontrado los códigos de UTF16 BoxDrawings. Son desde feff2500 hasta feff257f No todas las fuentes son compatibles con estos caracteres, pero una de las que sí los permite es Arial Unicode MS. Por ejemplo, la línea vertical gruesa es feff2503, o U+2503, o 9475 decimal Una vez averiguado esto, no sé cómo almacenar estos caracteres en una String, ni cómo escribirlos en un Memo o un Canvas (Sé usar OutTextXY, pero solo para caracteres "normales"). |
#6
|
||||
|
||||
Si usas UTF-16, entonces hay que usar WideString, si usas UTF-8 entonces puedes usar AnsiString. Delphi define String como alias de una de estas dos, dependiendo de que la versión de Delphi use internamente UTF-16 ó UTF-8. También existe UnicodeString (al menos en Free Pascal), pero no sé exactamente cómo funciona.
|
#7
|
|||
|
|||
Me ha funcionado definiendo una widestring. He escrito los caracteres con Alt-número en Chrome, los he copiado en el portapapeles y los he asignado en el código a la widestring, o incluso a la caption de una Label. El programa pide confirmación para guardar la unit en modo utf-8 y ya está.
Gracias por vuestra ayuda! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Usar TServerSocket y TClientSocket para enviar "streams" más o menos "grandes" | dec | Internet | 9 | 04-08-2015 16:11:50 |
"Dibujando" caracteres en consola | AgustinOrtu | Varios | 4 | 21-11-2014 03:50:10 |
Cómo escribir un bucle "for" con "endfor" | julyus | PHP | 3 | 08-04-2009 19:14:20 |
Necesito llamar a métodos de clases "hija" desde su clase "padre" | Flecha | OOP | 17 | 20-04-2007 00:03:53 |
porque no me reconoce los caracteres "*" ni "%" cuando filtro | mrmago | Conexión con bases de datos | 10 | 27-01-2006 04:21:16 |
|