C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 115 を表示中)
■67977 / )  Re[4]: Windowsのディスプレイ文字サイズ変更時の問題
□投稿者/ namara1991 (3回)-(2013/09/12(Thu) 17:00:01)
早速のご回答誠にありがとうございます。


No67975 (魔界の仮面弁士 さん) に返信
> ■No67974 (namara1991 さん) に返信
>>・マルチラインのTextBoxの高さ(異常に長くなり、このTextBoxの下にあるコントロールを隠してしまう)
> フォントの高さと行間が増えたとすれば、その分増加するとは思いますが、
> 異常ということは、それよりも遙かに長くなるということでしょうか?
> (10行分の高さだったものが、30行入る高さになってしまうなど?)

このTextBoxは、Panel内に配置しており、TextBox下端の下にボタンが配置されている状態なのですが、
ディスプレイの文字サイズを中以上にすると、実行時にこのTextBoxが下のボタンを隠してしまいます。
(デザインモードでの表示では、下のボタンを隠すことはありませんでした。)

ただ、TextBoxの高さについては、フォーム起動前に下のコントロールとの位置関係を元に再計算することにより
対応できました。


>>・デザイナであらかじめ列を追加したDataGridViewの列ヘッダの高さ
> 列ヘッダのセルスタイルが WrapMode = True に設定されていた場合、
> 列幅が不足するとテキスト表示が折り返されて複数行になるため、
> その場合は列ヘッダの行高さが増える可能性がありそうです。
>
> 並び順を示す△▽マークの表示を許可している場合には、
> その分の幅も確保せねばなりませんね。

やはり微調整が必要ですね。
そこで、DataGridViewの列ヘッダの高さ・幅を再計算するために、ディスプレイの文字サイズが何になっているか
(あるいは小-100%・中-125%・大-150%のような拡大率)を取得したいのですが、VBからこの情報を取得することは可能ですか?

お手数をお掛けいたしますが、よろしくお願いします。
返信 編集キー/


管理者用

- Child Tree -