Right-justified Windows and Menus in Hebrew Win95 (152137)



The information in this article applies to:

  • Microsoft Platform Software Development Kit (SDK) 1.0, when used with:
    • Microsoft Windows 95
    • Microsoft Windows NT Server 3.51
    • Microsoft Windows NT Workstation 3.51

This article was previously published under Q152137

SUMMARY

The written languages and cultures of the Middle East have a general right- to-left orientation while Latin-based written languages and cultures have a left-to-right orientation. This means that in a Hebrew application, lists, menus, sets of buttons, or anything else that can have an alignment should be designed with a right-to-left orientation.

MORE INFORMATION

Under Hebrew Windows 95, you can create overlapped windows, edit controls, list boxes, and so on, that have a right-to-left orientation by calling CreateWindowEx(WS_EX_RIGHT...). When the resulting window is opened in Hebrew Windows 95, if a caption bar exists for that window, it is right- aligned. If the resulting window is a control, the control would also have a right-aligned property. For example, edit controls would have cursors that start from the right end of the client area.

To right-align the menu takes a bit more work. The MENUEX resource and the MFT_RIGHTJUSTIFY flag will need to be used.

The syntax for MENUEX is:

   menuID MENUEX
   BEGIN
       [{[MENUITEM itemText [, [id] [, [type] [, state]]]] |
       [POPUP    itemText [, [id] [, [type] [, [state] [, helpID]]]]
       BEGIN
           popupBody
       END]} ...]
   END

   The following is an example of a right justified menu:
   ...
   #include "winuser.h"
   ...

   GENERIC MENUEX DISCARDABLE
   BEGIN
       POPUP "&File", , MFT_RIGHTJUSTIFY
       BEGIN
           MENUITEM "&New",     IDM_NEW, MFS_GRAYED
           MENUITEM "&Open...", IDM_OPEN, MFS_GRAYED
           MENUITEM "&Save",    IDM_SAVE, MFS_GRAYED
           MENUITEM "E&xit",    IDM_EXIT
       END
       POPUP "&Edit", , MFT_RIGHTJUSTIFY
       BEGIN
           MENUITEM "Cu&t\tCtrl+X",   IDM_CUT, MFS_GRAYED
           MENUITEM "&Copy\tCtrl+C",  IDM_COPY,MFS_GRAYED
           MENUITEM "&Paste\tCtrl+V", IDM_PASTE, MFS_GRAYED
           MENUITEM "Paste &Link",    IDM_LINK, MFS_GRAYED
       END

   END
				


SetMenuItemInfo can also be used to set the MFT_RIGHTJUSTIFY flag for individual menu items.

Modification Type:MinorLast Reviewed:7/11/2005
Keywords:kbIntlDev KB152137