• ベストアンサー

英語環境でのダイアログ表示のズレ

下記の環境にて、ダイアログ表示のプログラムを作成し、日本語環境のWindowsXPにて、動かしてみたところ、ダイアログ表示にズレがありました。英語環境では、想定どおりの表示になります。 原因/解決法をご存知の方がおられましたら、ご教授願います。 <開発環境> ・英語環境 Windows XP ・英語環境 Visual Studio 2005(Visual Basic.net) 以上。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

>ダイアログ表示にズレ 画面のプロパティで →デザインタブ →詳細設定ボタン →指定する部分→メッセージボックス ここの設定によって左右される問題です。言語がどうのこうのという問題ではありません。 日本語XPは「MS UI Gothic 9pt」が標準です。 英語XPのフォントは知りません。 無理やりダイアログのフォントを変える方法もありますが、、、 (↓VB6でのダイアログの変更の例) http://okwave.jp/qa384428.html そのフォントを変えることによって、ダイアログのサイズも計算して大きさを自力で変更する必要があります。 そして、これらの処理をAPIで全てやらなければなりません。 どうしてもあわせたいのであれば、ダイアログみたいなのフォームを作成することがベターだと思います。

suzumu
質問者

お礼

ありがとうございました。 とても参考になりました。

関連するQ&A

  • クリックワンスのダイアログが英語で表示される

    クリックワンスの自動更新で表示されるダイアログが英語で表示されてしまいます。日本語で表示されるようにできないでしょうか? 日本語で表示されるものもあれば、たまに英語で表示されるものがあります。(「アプリケーションの要件を検証しています。・・・」のダイアログと、その次の更新プログラムが存在してた場合に出るダイアログです。) インストールしたPCによって日本語だったり英語だったりします。 OSはWindows XPやWindows 7(32bitまたは64bit)ですが、OSの違いによるものではなさそうです。 英語で表示される場合は、アンインストール後インストールし直しても日本語にならず、英語のままです。 VisualStudio2005で開発を行っていますが、設定を変えられる箇所はなさそうで困っています。 英語表記のダイアログを日本語表記に変える方法はないでしょうか?

  • メインダイアログが最背面に表示されてしまいます。

    お世話になります、fujitomoです。 C++のダイアログベースのプログラムを作成しているのですが、ご質問 させていただきたい件がありまして、こちらへ書かせて頂きました。 質問させて頂きたい内容は、メインダイアログにて、他ダイアログをAfxBeginThread()を用いて別スレッドでモーダル表示させた時、その他ダイアログを他ダイアログ内でEndDialog(IDOK)で閉じた際に、メインダイアログが最背面になってしまうのですが、この原因として考えられることはありませんでしょうか? ちなみに、他ダイアログを別スレッドではなく、メインダイアログ内にてモーダル表示をし、EndDialog(IDOK)で閉じた際には、メインダイアログが最背面になることはありませんでした。 参考となるご意見がありましたら、よろしくお願い致します。 開発環境は Visual Studio 2005です。

  • WindowsXPの中国語版に日本語のVisual Studioはin

    WindowsXPの中国語版に日本語のVisual Studioはinstallできますか? Windows中国版Xp上でprogram開発を検討しています。 開発は日本で行いたいので、Visual studio日本語版を使いたいのですが、 installしてうまく動作しますか? 英語版ならどの言語でも動くことは知っていますが、 やはりヘルプとか見るのに日本語を使いたいです。 作成するsoftは文字が英語でも問題ないです。

  • 日本語のvisual studio で作成したプログラムを英語版windowsにインストールしたい

    日本語のVisual studio2008で開発をしています。(開発時のOSはwindows-XP日本語版) 上記で開発したプログラム(インストーラを作成)を、windows server2003(英語版)で実行する計画です。 このとき、インストーラを使用して、windows server2003(英語版)にインストールしようとすると、表示される文字が文字化けして、意味不明のガイドが表示されてしまいます。 文字化けせずに(全て英語で表示されるのが理想です)、インストーラが正しく、ガイドを表示するための方法をご存じでしたら教えて下さい。(日本語のVisual studio2008を使用した状態で解決するのが理想ですが、それでは解決しないので、英語版のVisual studio2008が必要であるという回答でもかまいません。)

  • VC++でダイアログ表示について

    VC++初心者です。 MFCアプリケーションでダイアログベースのアプリケーションを作ったのですが、ボタンクリック時にもう一つダイアログを表示しようと思っています。 以下のコードだと、うまく表示されずに画面がフリーズしてしまいます。どこを直したらいいのでしょうか。ご教授願います。 環境は、xp、Visual Studio.net 2003です。 void CMFCtestDlg::OnBnClickedButton1() {   //   CmyDialog myDL;   myDL.DoModal(); } MFCtestDlg.cpp内、#include "myDialog.h" は記述してあります。 VBの経験はあるのですが、VC++はまったくわかりません。 よろしくお願いします。

  • ダイアログに表示されるアイコンについて

    こんにちは。 Visual Studio 2005 C#で、プログラムをつくっているのですが お客さんの要望で、ファイルの上書き警告とかのダイアログが 小さくて見づらいので大きくして欲しいといわれました。 ダイアログは、Formを新たにつくって、大きめのラベルとボタンを 貼り付ければよいとおもうのですが、クエスチョンマークとかの アイコンを大きくするにはどうすればよいのでしょうか? アイコンのファイルがわからずこまっています。 よろしくお願いいたします。

  • Windows CE プログラミング環境

    訳あって,Windows CEマシンのプログラムの開発をしたいのですが, 開発環境をどのように揃えたらよいのかわかりません。 何を揃えれば,プログラムが開発できるか教えていただけないでしょうか。 手元には, Visual Studio .net 2003と,Visual C++ 6.0 があります。知り合いに聞いたところ,マイクロソフトから, 開発キットをダウンロードすればいいらしいと聞いたのですが, その知り合いも経験が無く,よくわからないとのことです。 最低限, ウィンドゥが開いて,Helloだけを表示するプログラム が書ければあとはなんとかなると思うのですが, 揃えるべき環境とその揃え方がわからないと, 全くスタートできないので,困っています。 どなたか,ご教授いただけると助かります。

  • Visual Studio .Net 2003 C++ ダイアログベース(MFC) でファイルを開くダイアログを付けるには

    Visual Studio .Net 2003 C++ ダイアログベース(MFC) で あるボタンを押すと「ファイルを開く」ダイアログを 新たに表示させ、そこで選択したファイルの場所を 返すようにしたいのですが、可能でしょうか? 可能ならばその方法も教えていただきたいです。 (プログラムにあまり詳しくないので、 やや詳しく書いていただけるとありがたいです。)

  • 英語OSで日本語アプリのダイアログの表示が切れる

    開発環境:VS2008 + Windows7 上記開発環境で作成した日本語アプリをアルティメット版英語OS上で起動すると、ほとんどのダイアログ、プロパティーシートで右端が切れてしまいます。 ダイアログのフォントは「MS Pゴシック(9)」を使用していますが、この件でググると「英語標準フォントのSegoe UI (Sympol)」で解決するとあったので変更してみましたが、全く改善しませんでした。 ダイアログのサイズに余裕を見てレイアウトしなおさなければならないのでしょうか。 以上です。

  • タスクマネージャに表示するダイアログの変更

    開発環境: Visual Studio 2008 Pro 現在メインウィンドウのOnInitDialog()内から複数のダイアログを順次モーダル表示させ、 OnInitDialog()を抜ける時には自身のウィンドウに対してWM_CLOSEを送ることでアプリを 終了させるプログラムを作成しております。 ですがこのやり方だと、モーダル画面等で処理中にはタスクマネージャーにアプリケーションが 表示されません。 特定のダイアログに対してウィンドウスタイルを変更すれば解決できるかと思い、 (1)メインウィンドウのOnInitDialog()開始直後に自身のウィンドウスタイルからWS_EX_APPWINDOWを削除。 (2)代わりにメインウィンドウとして認識させたいダイアログに対してWS_EX_APPWINDOWを設定。 上記の処理を試してみましたが、タスクマネージャーに表示させることができませんでした。 必要な処理などに誤りがあるのでしょうか? もしご存知の方がいらっしゃいましたらどうかご教示いただけます様お願い致します。

専門家に質問してみよう