2011-01-17 10 views
5

Estoy ejecutando mi aplicación en inglés en árabe Windows. Contiene una hoja de propiedades UI (MFC). Todo parece estar bien (De izquierda a derecha o LTR), excepto los botones (Aceptar, Cancelar, Aplicar y Ayuda) que son de derecha a izquierda o RTL. Pero, ¿cómo hacer que los botones LTR?Problema de diseño RTL para Hojas de propiedades (MFC)

  • He jugado un poco con la bandera PSH_RTLREADING mencionado en MSDN pero sólo trata con el título de ventana, no los botones.

  • Además, noté this dicussion pero no hay una buena solución.

+0

pregunta interesante. +1 – 0xC0000022L

Respuesta

1

La respuesta la da Raymond Chen [1] y otro empleado de Microsoft [2]; debe eliminar el estilo WS_EX_LAYOUTRTL de los botones en la ventana creada por su CDialog (también conocido como CPropertySheet). Puede hacerlo globalmente cuando crea su CMainFrame y lo hereda en todas las ventanas secundarias, o localmente cambiando el estilo de ventana de GWL_EXSTYLE.

[1] http://blogs.msdn.com/b/oldnewthing/archive/2010/06/11/10023274.aspx

[2] http://social.msdn.microsoft.com/Forums/en/vcgeneral/thread/057612e7-6cd4-44cf-a746-6370ace5de09