miércoles, 22 de diciembre de 2010

Solución problema con acentos en Qt

Ahora que ya he terminado el proyecto, aunque la nota no haya sido todo lo buena que a mi me hubiera gustado o casi que merecido, tengo tiempo de comentar todos esos detallitos de implementación de la interfaz que me han hecho googlear bastante.

En esta entrada voy a comentar una cosa curiosa. En linux, cuando ejecutaba mi interfaz me di cuenta que en vez de poner Características en uno de los label, ponía Caractersticas, es decir, que se comía la i acentuada, o me salía un gurrumiño ... :S. Curiosamente en windows no me pasaba esto, es decir que todo se veía la mar de bonito jejeje.

Para ver correctamente los acentos, lo que hay que hacer es cambiar la codificación de los caracteres usada por Qt. En el fichero .cpp donde se abre la aplicación hay que añadir el siguiente trozo de código:

QTextCodec *linuxCodec = QTextCodec::codecForName("UTF-8");
QTextCodec::setCodecForTr(linuxCodec);
QTextCodec::setCodecForCStrings(linuxCodec);
QTextCodec::setCodecForLocale(linuxCodec);


Espero que a alguien le sirva de ayuda :).

No hay comentarios:

Publicar un comentario