• 締切済み

日英対応のメニューの作り方

CでWindowsのプログラム作っています。 メニューの文字が現在、日本語で表示するようにプログラムしていますが、英語表示版が必要になりました。リソースファイルを書き換えて再コンパイルすれば英語版ができるのはわかりますが、もっとスマートな解決策ありませんか? たとえば、外部ファイルとして日本語、英語メニュー文字列を用意しておいて、起動時にどちらかを読み込んで、そこの文字列を表示するとか、日本語版、英語版のメニューをあらかじめプログラムに埋め込んでおいて、実行時のオプションメニューなどで表示を切り替えるなどです。 具体的なテクニックとそのためのコーディングお教えください。 なお、リソース・エディタは、「BCCForm and BCCSkelton」を使っています。

みんなの回答

  • titokani
  • ベストアンサー率19% (341/1726)
回答No.2

1つのリソースファイル内で、それぞれの言語ごとに文字列を定義できると思います。 VCだと、右クリックメニューから「コピーの挿入」をするだけなのですが。 試しに作ってみると、.rcファイル内に、 LANGUAGE LANG_JAPANESE, SUBLANG_DEFAULT LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US という記述がありました。 お使いのリソースエディタが対応していなくても、直接記述すればいいのではないかと思います。 リソースコンパイラが対応していないということはないと思いますが。 BCCは使っていないので、だめでしたらごめんなさい。

usatan2
質問者

お礼

ありがとうございました。

  • chie65535
  • ベストアンサー率43% (8520/19369)
回答No.1

インストール時に言語を選択出来るようにし、選択した言語のリソースファイルを実行プログラムと共にインストールする。 実行プログラムは、起動時にインストールされたリソースファイルを読み込むようにすれば良い。 http://msdn.microsoft.com/ja-jp/library/cc410882.aspx どの言語をインストールしたかは、インストール時にiniファイルやレジストリに書き込めば良い。

usatan2
質問者

お礼

ありがとうございました。

関連するQ&A

  • 日本語版イラストレーター10のメニューバー表示を英語に切り替えるには?

    だめもとで質問なのですが、日本語版イラストレーター10のメニューバー表示を英語に切り替えることはできますか?英語版を日本語環境でそのまま英語表示させることは問題ないことは知っているのですが、その逆が分かりません。以前、このサイトでもアドビのソフトはリソースファイルを移動すれば英語メニューになるとご返答なされていた方がおられましたが、もし、可能であれば具体的にどのようにすれば良いのかお教えください。よろしくお願いいたします。

    • 締切済み
    • Mac
  • Androidアプリで別環境でのリソース取得

    Androidアプリを開発していまして、プログラミングの知識はある方の部類だと思っています。 Androidアプリでのリソースを取得するとき、実行する環境にあった文字列やdrawable等を取得できるのは知っています。 ここで、プログラム上から別環境のリソース(例えば文字列)を取得することは出来るのでしょうか? 具体的にしたいことは、アプリの多言語化なんですが、ほとんどは端末にあった言語の文字列を使いたいのですが  ある部分だけに「日本語」を使いたいのです。 例えば、たくさんのボタンがあって それを押したら「日本語」で 〇〇を押しましたと出したいのです。 英語の環境では   "Hello" , "Good Night"    ー>「おやすみ」を押しました。 日本語の環境では  "こんにちは" , "おやすみ" ー>「おやすみ」を押しました。 ○語の環境では    "○○","△△"        ー>「おやすみ」を押しました。 管理しやすいようにしたいので、文字列リソースを strings.xmlに書きたいところなんですが 、別環境での文字列を取得する方法がわからなかったので 質問いたしました。 自分で、文字列を管理する独自クラスを作ってハードコーディングしてもいいのですが、やはり strings.xml に書きたいなと思っています。 文字列の管理を簡単にしたいので、少々長い処理が必要になってもいいです。 (なるべくAndroid2.2以上を対象としてますが、無視していただいても構いません) 以上よろしくお願いいたします。

  • メニューバーの文字が英語に変わってしまった!

    マイクロポートエディターという画像アプリケーションなのですが、或る日突然、そこのメニューバーの文字が英語に変わってしまいました!・・・簡単な項目なので、英語でも別に支障はないとはいえ、何となく気になります。元の日本語に戻すにはどうしたらいいでしょうか?

  • IE6の日本語メニューはどこで入手できますか?

    Windows 2000英語版(SP4)に多国語インターフェース(MUI)を入れて使用しています。そこでIEの6SP1にアップグレードしたのですが、IEに限らず、全てのツールバーが英語になってしまいます。色々調べてみて、IE6 SP1用各国語メニューとダイアログボックスをインストールすれば、ツールバーも各国の言語で表示できるようになることがわかりました。 ところが、この各国語メニューとダイアログボックスが見つかりません。以前は、Windows update catalogから検索し探すとダウンロードできるとのことでしたが、今ではWindows update catalogなるものはなくなり、Microsoft update catalogか何かに変わってしまっていて、そこで検索しても見つかりません。 どなたか、このIE6 SP1用の各国語メニューとダイアログボックスの入手できる場所をご存じないでしょうか?ぜひご教示いただきたいのです。 色々調べていって、日本語以外のメニューとダイアログボックスが入手できる可能性があることはわかりました。実際に一つの言語を入手して入れてみるとツールバーがその言語に変わってくれました。しかし、日本語だけがない!! そこでためしにWindows 2000を日本語表示にしてIE6 SP1にアップグレードしましたら、日本語のIEが入ったようで、ツールバーの日本語表示が可能になりましたが、英語メニューとダイアログボックスをインストールしても、OSのUIを英語に戻した場合、ツールバーが日本語表示になってしまいます(outlook expressは完全に文字化け状態です)。 要するにOSが英語版である以上、IEも英語版を入れろということのようですが、一体、日本語メニューとダイアログボックスはどこにいってしまったのでしょうか?自分の探し方が不十分なのかもしれません。どなたかお教えください!

  • リソースの多国語化で

    現在、顧客の関係でVisualStudio2003でC++のプログラミングをしております。 その中で、中国語やドイツ語などのリソースの追加依頼があり、 その言語の文字列をもらっています。 そこで、リソースファイルをEmeditorなどのエディターで直接開き、編集して保存すると、他の言語の部分でコンパイルエラーが起こってしまいます。 開くときのエンコードは、中国語であれば、GB2312で開き、編集後保存する際には、同じエンコードで保存したり、SJISで保存をしたり試しました。が、やはり、同じようにコンパイルエラーになってしまいます。 そもそもこのような方法はとれませんでしょうか?もしくは、他に何か方法があれば、お教え願えれば助かります。 よろしくお願いいたします。

  • Windows Media Playerのメニュー表示について

    米国サイトを閲覧中に、WMPのバージョンUPを促す小ウィンドウが開き普段はキャンセルしてたのですが、 何気にOKを押してバージョンUPしてしまいました。確かv7.00 から v7.01です。 そしたらナント、英語版になってしまいました。まぁ当然と言えば当然ですが。 日本語版の場合、「ファイル(F)」の表示が現在「File」です。プルダウンされるメニューも全て英語。 面白いのが、「Help」メニューでHelp Topics(恐らく日本語の場合は”目次とキーワード”だったかな) を開くと、そこからは日本語で表示されます。 言語(langege)の設定を日本語にすれば済む事と思っているのですが、この設定する場所が見つからない。 ちなみにデフォルトスキンで左に表示されるメニュー(縦に7つ)も全て英語です。 WMPをMSダウンロードサイトから日本語版に再インストールしても現象は変わりません。 どこかのレジストリーに情報が残ってしまっているからでしょうか? 英語が得意でないのでちょっと困りもの。 当方、OSはWin2K IE6.0を使用してます。 同じ思いで辞書片手にWMPを利用している人、いませんか? どなたか助けてください。

  • iTunes10のメニューバーについて

    iTunes10を ダウンロードしたら メニューバー( ファイル 編集 表示…等)が 英語表示になっています。 日本語表示にするには どうしたらいいのですか?

  • Outlook Expressのメニュー表示について

    外国人用にWindows98SE(日本語版)の設定をしているのですが、せめてIEとOutlook Expressくらいは外国語(英語またはスペイン語)のメニューにしてあげたいと思っています。IEについては設定できたのですが、Outlook Expressのメニューバーが日本語のままです。過去に同じようなことをやったときにはIEのメニュー表示言語を変えることによってOutlook Expressのほうも表示が変わったような記憶があるのですが、思い出せません。 なんとかOutlook Expressのメニュー表示を英語またはスペイン語に変える方法を教えて下さい。よろしくお願いします。

  • プログラムメニューがあふれたとき

    スタートから表示されるプログラムメニューが3列あるのに2列までしか見れません。(800*600のとき) 1024にした場合は3列めの前半4~5文字しか見れません。 3列目もしっかり見たい場合どのようにしたらいいでしょうか 2列まで減らせばいいですが、デフォルトで3列目までプログラムがインストールされています。 WindowsVistaモバイルPC利用

  • Windows2000日本語版で、メニュー文字を英語/日本語に切替できませんか?

    ややこしい質問かもしれませんが、よろしくお願いしますm(__)m 今日、W2Kをインストールしたのですが、ウインドウタイトルの文字やメニューの文字を英語表記にしたいのですが、[スタート]ボタンを[START]にしたいのですが・・・、やはり英語版と日本語版をインストールして切り替えないといけないのでしょうか? 日本語環境で動いていてもいいのでウインドウ等の表示だけ英語・・・えーと、、早い話、MacintoshのKaleidoscopeみたいなものでもいいのですが・・・ 疑問点は補足させてもらいます よろしくお願い致します

専門家に質問してみよう