Bob, take a look at my NPW9b or NPW-HA kite making programs at:
http://members.shaw.ca/kiteman/Downloads.htm
On each form I have built a Label that is large enough to contain the
translation with the greatest number of characters. The caption for the
label is set as:
Label1.Caption = Phrase$(xxx)
where "xxx" is obtained from the left three characters from the line in the
external language text file.
I did try using Resource files (websearch for "Resource files for
Localization")- it worked to some extent for my purposes, but since my
translations were being done by volunteers around the world, I couldn't let
multiple people have access to the resource file - it would bound to get
botched at some point.
A big advantage to using my external language file is that anyone can
perform a translation and plop it into the same folder - as long as it
follows my file naming convention it is automatically recognized the next
time the program is run and they can use it immediately. The only time
that I am required to do anything is if the person needs more room to fit
the extra characters that their verbose language might require. I have
found that if I allow room for the German language, that pretty much any
other language will fit well within that space.
If you require UNICODE support, you will have to use the objects from the MS
Forms 2.0 library.
If you know someone who is willing to translate my language files into
Spanish, I would appreciate it :-)
Tom
"Bob Kochem" <in**@minuteman-systems.com>
wrote in message news:b_iyf.447$Bn4.75@trndny08...
I think this gets me off and running.
I am assuming I can use a similar approach to rename all labels and other
named items on forms.
Can anyone point at a good tutorial on making programs support multiple
languages? I would like to avoid re-inventing the wheel if possible.
One more thing I am wrestling with is all the message boxes that are
posted in the program. The program's been around quite a while and now
makes use of the MsgBox in a couple hundred places. I am thinking of
creating a "meta" message box function, something like TransMsgBox, doing
a global replace of "MsgBox" with "TransMsgBox" and then having the
TransMsgBox function do the translation (somehow) for every set of
arguments passed to it.
Thanks,
Bob Tom
"Bob Kochem" <in**@minuteman-systems.com> wrote in message
news:JKfyf.788$SD3.741@trndny07... [I apologize if this is an incredibly newbie question ...]
I am looking for a way via code to access all the menu itmes on a given
form. I am looking for something like the Forms or Controls collections,
but for menu items. Is there such a thing or method? I would prefer to
avoid using the Win API but will do so if that's the only way available.
This is for a language-translation (of an existing program) where I wish
to change (English to Spanish initially) the Descriptions for all the
menu items.
Thanks in advance
Bob K.