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

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

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

Re[4]: 画面解像度によって表示プログラムの解像度変更


(過去ログ 85 を表示中)

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

■50424 / inTopicNo.1)  画面解像度によって表示プログラムの解像度変更
  
□投稿者/ あきら (1回)-(2010/06/07(Mon) 09:48:25)

分類:[C#] 

ターゲット解像度を決めて画面デザインを作成し、
それをそれぞれ解像度の違うディスプレイに表示される様にしたいのですが、方法等ありますでしょうか?

よろしくお願いします。
引用返信 編集キー/
■50426 / inTopicNo.2)  Re[1]: 画面解像度によって表示プログラムの解像度変更
□投稿者/ よねKEN (518回)-(2010/06/07(Mon) 10:10:11)
よねKEN さんの Web サイト
2010/06/07(Mon) 10:10:42 編集(投稿者)

No50424 (あきら さん) に返信
> ターゲット解像度を決めて画面デザインを作成し、
> それをそれぞれ解像度の違うディスプレイに表示される様にしたいのですが、方法等ありますでしょうか?

質問が少々曖昧です。

1. 開発環境について
 (1) バージョンは?(対象とする.NET Framework、言語、開発環境のバージョン)
 (2) アプリケーションの種類は? (Windowsアプリか、WPFアプリかetc)

2. どんな条件でどんな風に表示されることを望むか?
 (1) ターゲットよりも低い解像度を考慮するか?
   例えば、ターゲットが1024x768で、実行環境が800x600の場合、どんな風に表示したいのか?
   (a) あたかも全体が縮小されたように見せる?
   (b) 適当にうまいことレイアウトしてそれなりに見せたい
   (z) その他

 (2) ターゲットよりも大きい解像度に対してはどのように扱うのか?
   (a) 全体的な配置は変えずに、それぞれのコントロールのサイズが同じような比率で大きくなればよく、
     フォントの大きさはそのままでよい
   (b) 全体的に拡大したように見せたい(フォントも適宜、大きく表示したい)
   (c) 大きい解像度に適したレイアウトにしたい
   (z) その他

 (3) どんなことを調べ、どんなことを試してみたのか?

などの疑問が沸きます。

たぶん、Windowsアプリで、少なくとも.NET Framework2.0以降だろうと思うので、
とりあえず調べておいた方がいいキーワードを以下に挙げておきます。

Dockプロパティ
Paddingプロパティ
Marginプロパティ
Anchorプロパティ
FlowLayoutPanelクラス
TableLayoutPanelクラス
引用返信 編集キー/
■50428 / inTopicNo.3)  Re[2]: 画面解像度によって表示プログラムの解像度変更
□投稿者/ あきら (2回)-(2010/06/07(Mon) 10:25:34)
No50426 (よねKEN さん) に返信
> 2010/06/07(Mon) 10:10:42 編集(投稿者)
> 質問が少々曖昧です。
申し訳ありません。
>
> 1. 開発環境について
>  (1) バージョンは?(対象とする.NET Framework、言語、開発環境のバージョン)
>  (2) アプリケーションの種類は? (Windowsアプリか、WPFアプリかetc)
visual stdio2008、C#にてWindowsアプリにて開発しております。

> 2. どんな条件でどんな風に表示されることを望むか?
今回はターゲット解像度よりも大きい解像度に対して行い、全体的に拡大したように見せたいと(コントロール及びフォントも適宜)と考えおります。

>  (3) どんなことを調べ、どんなことを試してみたのか?
まだ調査を開始してばかりなので具体的にはまだ何も試していない段階です。


引用返信 編集キー/
■50448 / inTopicNo.4)  Re[2]: 画面解像度によって表示プログラムの解像度変更
□投稿者/ Jitta on the way (646回)-(2010/06/07(Mon) 18:28:31)
No50426 (よねKEN さん) に追加
> とりあえず調べておいた方がいいキーワードを以下に挙げておきます。
>
> Dockプロパティ
> Paddingプロパティ
> Marginプロパティ
> Anchorプロパティ
> FlowLayoutPanelクラス
> TableLayoutPanelクラス

「AutoScale」って、無かったっけ?

Screen オブジェクトから現在の解像度がとれるから、基準との差によって Font の大きさを調整すれば、よきに計らってくれたような?
注意としては、
TableLayoutPanel は、1Form に1つにする。
「折り返し」に注意する。
余裕のあるレイアウトにする。
…といったところかな。
引用返信 編集キー/
■50449 / inTopicNo.5)  Re[3]: 画面解像度によって表示プログラムの解像度変更
□投稿者/ 囚人 (504回)-(2010/06/07(Mon) 18:45:36)

「解像度」って単語をどういう意味で使ってますか?
DPIの事を指していますか?それとも画面の総ピクセル数の事を指してますか?

AutoScale なんかは、DPI の違いを吸収する仕組みのためにあるもので、総ピクセル数の違いには使えません。


で、

>今回はターゲット解像度よりも大きい解像度に対して行い、全体的に拡大したように見せたいと(コントロール及びフォントも適宜)と考えおります。

何でそんなことしたいんですかね。
もし、総ピクセル数の違いを吸収したいなら結構面倒じゃないかな、と思います。

引用返信 編集キー/
■50456 / inTopicNo.6)  Re[4]: 画面解像度によって表示プログラムの解像度変更
□投稿者/ Jitta (649回)-(2010/06/07(Mon) 22:21:08)
No50449 (囚人 さん) に返信
>
> 「解像度」って単語をどういう意味で使ってますか?
> DPIの事を指していますか?それとも画面の総ピクセル数の事を指してますか?

 Windows が「総ピクセル数」(画面の縦横のピクセル数)に「解像度(resolution)」という語を割り当てているから。。。


> >今回はターゲット解像度よりも大きい解像度に対して行い、全体的に拡大したように見せたいと(コントロール及びフォントも適宜)と考えおります。
>
> 何でそんなことしたいんですかね。

 昔作ったシステムでは、画素数が多くなると(画面の大きさは変わらず)1画素の大きさが小さくなったので、その分大きく表示したい、という要望がありました。もっとも、CRT 時代の昔のシステムですが。
 そういう昔を引きずっている人が仕様を決めたなら(あるいは未だに CRT を使っているなら)、あり得るかなぁ、と思います。
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -