2011-08-25 7 views
6

¿Hay alguna forma de obtener las versiones localizadas de "Sí", "No", "Aceptar", "Cancelar", "Anular", "Volver a intentar" y "Error"? Estoy diseñando un cuadro de diálogo personalizado y sería muy útil poder localizar los botones automáticamente.¿Hay alguna forma de obtener los nombres localizados de los botones de diálogo comunes?

Me sorprendería que esta información estuviera disponible a través de la API de Windows, ¡pero no está de más preguntar!

+1

relacionados: http: //stackoverflow.com/questions/4663855/is-there-a-repository-for-localized-common-text -in-winforms – Damith

Respuesta

9

,

no es así, Microsoft Terminology Collection. No solo los diálogos Sí/No, sino también cualquier otra oración que se use en Windows. Espere este trabajo para usted.

Usted puede echar un vistazo a ese sitio, hay algunas cosas útiles

+1

+1 Buen punto, pero creo que para un par de cadenas de diálogo esto no vale la pena. – Tigran

+1

Dado que es peligroso intentar explorar en user32.dll para encontrar las cadenas de idioma, considero que esta es la mejor respuesta. ¡Gracias! –

1

Me temo que no hay forma oficial de hacerlo. Hay varios trucos para enganchar la apariencia del ventana/diálogo del sistema y obtener el texto del control BUTTON. En este caso, evitará la vinculación estática en el recurso de Windows, como se proporciona en el enlace, pero recuperará dinámicamente la cadena "tal cual".

Pero tenga en cuenta que, después de saltar a los problemas de compatibilidad de la API de Windows, problemas de 32/64 bits y así sucesivamente. Esto es mes completo.

Personalmente, implementaría mi propio "messagebox" y lo ubicaría en el idioma elegido por la aplicación.

Cuestiones relacionadas