INASOFT 管理人のひとこと


フリーソフトダウンロードサイト「INASOFT」の管理人 矢吹拓也 が日々の「ひとこと」を語るページです。
2021年1月1日より、旧ブログ(blog.inasoft.org)からお引越ししました。
・INASOFT Webサイト: https://www.inasoft.org/
・管理人のふたこと(長文記事/寄稿文): https://www.inasoft.org/talk/
本業の方のお仕事が再び忙しくなりつつあるので、断続的にしばらく更新が止まることがあります。

目次 | ←前へ / 2015-06-26 00:00 / 次へ→ / 最新へ⇒

■.NET Frameworkのフォームアプリケーションも英語対応にしてみたい

2015/ 6/26 0:00:00


RSSRSS配信中

https://www.inasoft.org/








これまで、INASOFTで公開している .NET Framework のフォームアプリケーションは、他のいくつかのネイティブアプリケーションで実施しているような、日本語環境以外で動作させたときにUIが英語になる対応を行っていません。

単に面倒くさかったこともありますが、実施するためのよい方法を探すのが面倒くさかったというのもあります。
今回、ちょっと興味がわいてググってみたら、結構すぐに見つかりました。


Windowsフォームを多言語対応にするには?

英語に自信があるわけではないですが、ちょっと試してみようかと思います。
ちなみに、すでに日本語で作られたUIがあり、日本語以外の環境では英語で表示されなければならないので、ちょうど下記のサイトの記載が参考になりそうです。

Windowsアプリの国際化(i18n)のやり方

とりあえずは「複数行置換」から試してみようかと思います。
英語には自信がないので、ほぼ自動翻訳の英語を割り当てることになりそうですけどね。

なお、表示言語のコントロールは、環境の言語設定だけでなく、環境変数からも実施できるようにするので、環境変数の取得メソッドも使うことになります。

MSDNライブラリ - Environment.GetEnvironmentVariable メソッド (String)


【6/26 7:00追記】よく考えたら、リンク先のページに書いてあるような、規定言語をブランチしてそこを日本語のままにして、英語ダイアログを作ってプログラムから言語設定をねじ曲げるより、規定言語をブランチして日本語ダイアログをつくり、日本語ダイアログはいじらずに規定言語ダイアログを英語化したほうが、プログラムでねじ曲げなくて済む分、シンプルですね。

【6/26 20:50追記】実際に試してみたらダメでした。日本語ダイアログを作ってから既定言語(英語相当)ダイアログをいじる(例えば、終了(X)をExitに変える)と、日本語ダイアログ側まで変わってしまう。要は、既定言語とその他の言語は、差分情報だけを保持しており、差分が差分として反映されるのは既定言語以外のダイアログをいじったときのみというわけだ。既定言語側ダイアログをいじると、日本語側ダイアログに対する入力で差分情報を持っているのでなければ、日本語ダイアログ側にもその変更が反映されてしまうという仕組みか。作戦失敗...



目次 | ←前へ / 2015-06-26 00:00 / 次へ→ / 最新へ⇒


目次の表示:


ブログではないので、コメント機能とトラックバック機能は提供していません。ご質問・ご意見等はメールフィードバックまたはTwitter等からお願いします。いただいたご質問・ご意見などは、この「管理人のひとこと」の記事に追加、あるいは新規の記事にする形で一部または全文をそのまま、あるいは加工させていただいた上で、ご紹介させていただく場合があります。
当サイトでは掲載内容による不具合等に関する責任を持ちません。また、内容の正確性についての保証もありませんので、情報をご利用の際は、利用者の自己責任で確認をお願いします。本ページは公開から1年半後の任意のタイミングで削除される予定です。




2561009 (+0156)[+0708]

Copyright© 2010-2021 INASOFT