Microsoft KB Archive/172346
Article ID: 172346
Article Last Modified on 8/14/1999
- Microsoft Visual FoxPro 5.0 Standard Edition
- Microsoft Visual FoxPro 5.0a
This article was previously published under Q172346
In Visual FoxPro 5.x, the Input Method Editor (IME) box can be disabled in the development environment but cannot be disabled at runtime in an executable (.exe) file.
When a text box is in a grid, the grid code overwrites the text box object's IMEMode property and causes this behavior.
Two workarounds exist for this problem. First, place the following code in the GotFocus event of each individual text box in a grid to reset the IMEMode property:
This.IMEMode = 2
Second, you can create a text box class that has the above code in the GotFocus event, and subclass all the text box objects in the grid from the text box class.
Setting the IMEMode property in the Properties window for each individual text box does not work.
Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This bug has been fixed in Visual Studio 97 Service Pack 3.
For more information, please see the following article in the Microsoft Knowledge Base:
170365 INFO: Visual Studio 97 Service Packs - What, Where, and Why
The IME box allows the user to input Double Byte Character Set (DBCS) characters into a character field. You can enable and disable the IME box automatically by selecting Tools and Options from the main menu and then selecting the "Browse IME Control" check box located on the General tab. Once the "Browse IME Control" is checked, the IME box is automatically enabled as you move into a character field in a grid.
Steps to Reproduce Behavior
- Make sure the Browse IME Control check box is selected by selecting Options from the Tools menu, and then clicking the General tab.
- Create a project named "imeproj."
- Create a form named "imeform."
- Add a table (for example, customer) to the DataEnvironment of the form, and drag the table to the form to create a grid.
- Go into each individual text box and set the IMEMode property to "2 - Close IME."
Add a command button to the form and put the following code in the Click event:
RELEASE Thisform CLEAR EVENTS
Create a main program name "imemain," with the following code:
DO FORM imeform READ EVENTS
Mark this program file as the main file in the project.
- Create and run the executable file.
NOTE: The IME box still appears even though the IMEMode property is already set to "2 - Close IME."
NOTE: The IME box only works on operating system platforms that support DBCS, such as Microsoft Windows 95 Traditional Chinese version.
Additional query words: IME DBCS
Keywords: kbbug kbfix kbvs97sp2fix KB172346