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

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

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

Re[2]: フォームの表示位置


(過去ログ 68 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■39351 / inTopicNo.1)  フォームの表示位置
  
□投稿者/ kdimn (1回)-(2009/08/06(Thu) 11:16:42)

分類:[VB.NET/VB2005 以降] 

VB2005を使ってシステム開発を行っています。
フォームの表示位置の設定をしたいのですが、
実際にシステムを使うコンピュータと開発を行っているコンピュータの
画面の大きさが違うため、

Me.Location = New Point(10, 10)

のようにコーディングをしても実際にはうまく表示されないんじゃないかと
不安です…。

そこで質問させていただきたいのですが、
フォームを1つ画面のセンターに表示させて、その隣にフォームが
表示されるようにしたいのですが、どのようにしたらよいでしょうか…
引用返信 編集キー/
■39354 / inTopicNo.2)  Re[1]: フォームの表示位置
□投稿者/ 魔界の仮面弁士 (1181回)-(2009/08/06(Thu) 11:41:13)
No39351 (kdimn さん) に返信
> 実際にシステムを使うコンピュータと開発を行っているコンピュータの
> 画面の大きさが違うため、
画面の大きさとしては、
 ・物理的な画面サイズ(17", 19" など)
 ・画面解像度の違い(SXGA, UXGAなど)
 ・DPI設定の違い(96dpi, 120dpiなど)
などの違いがありますね。
フォームの AutoScaleMode プロパティの設定にも注意が必要です。

また最近は、マルチモニタ環境も増えてきたので、複数モニタ時の対応も
必要になるかもしれません。


> Me.Location = New Point(10, 10)
それで移動できると思いますよ。
また、Location 以外の設定方法もあります。Left/Top/SetBoundsなど。

なお、Form_Load で座標をしてするつもりなのだとしたら、
StartPosition プロパティは Manual にしておいた方が良いでしょう。


> 実際にはうまく表示されないんじゃないかと不安です…。
物理的な画面サイズはどうにもなりませんが、DPI 設定を変更して確認する事はできるかと思います。
で、解像度は――CRT だと変更できますが、液晶モニタだと固定解像度の物もありますね。


> フォームを1つ画面のセンターに表示させて、その隣にフォームが
> 表示されるようにしたいのですが、どのようにしたらよいでしょうか…
StartPosition プロパティに CenterScreen を指定する事で、
初期表示位置を画面の中央にすることが出来ます。
表示後の中央表示であれば、CenterToScreen メソッドを利用できます。

その隣(上下左右)にフォームを表示したい、という話であれば、
基準となるセンターフォームの座標から、算出できるかと思います。
引用返信 編集キー/
■39363 / inTopicNo.3)  Re[2]: フォームの表示位置
□投稿者/ kdimn (2回)-(2009/08/06(Thu) 13:54:50)
2009/08/07(Fri) 09:24:34 編集(投稿者)

No39354 (魔界の仮面弁士 さん) に返信
> また、Location 以外の設定方法もあります。Left/Top/SetBoundsなど。

そうなんですか。
もしよろしければ詳しく教えていただけませんでしょうか?

> StartPosition プロパティに CenterScreen を指定する事で、
> 初期表示位置を画面の中央にすることが出来ます。

一応、センターに表示するだけならできました!!

> その隣(上下左右)にフォームを表示したい、という話であれば、
> 基準となるセンターフォームの座標から、算出できるかと思います。

なるほど…
申し訳ないのですが、どのように算出したらよいのでしょうか…

追記
すみません、自己解決できました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -