2011-01-17 2 views
5

Я выполняю свое английское приложение на арабском языке Windows. Он содержит лист свойств UI (MFC). Все кажется прекрасным (Left-To-Right или LTR), за исключением кнопок (OK, Cancel, Apply и Help), которые являются Right-To-Left или RTL. Но как сделать кнопки LTR?Реализация макета RTL для листов свойств (MFC)

  • Я играл с флагом PSH_RTLREADING упоминается в MSDN, но она имеет дело только с заголовком окна, а не на кнопках.

  • Кроме того, я заметил this dicussion, но нет хорошего решения.

+0

Интересный вопрос. +1 – 0xC0000022L

ответ

1

Ответ предоставлен Раймондом Ченом [1] и другим сотрудником Microsoft [2]; вам нужно удалить стиль WS_EX_LAYOUTRTL с помощью кнопок в окне, созданном вашим CDialog (иначе CPropertySheet). Вы можете сделать это глобально, когда создаете CMainFrame и наследуете его ко всем дочерним окнам или локально, изменяя стиль окна с 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

Смежные вопросы