- PR -

GridLayoutでページを作成するとコントロールが重なる?

1
投稿者投稿内容
NAK
ベテラン
会議室デビュー日: 2002/10/27
投稿数: 91
投稿日時: 2003-10-24 11:16
皆様にはいつもお世話になっております。

初歩的な質問で申し訳ないのですが、教えてください。

VB.NETで「GridLayout」でテキストボックスやラベルなどを並べた
ページを作成したのですが、表示する環境によってコントロールが重なってしまったり、
ずれてしまったりして難儀しております。
ちなみに「FlowLayout」にすると問題は解決しますが、画面構成が複雑のため、上記で開発したいと思っております。
(環境と言っても、Windows2000以上なのですが。。。)

どなたか、この辺の情報ご存知の方はいらっしゃいませんでしょうか?

Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-10-24 14:20
引用:

NAKさんの書き込み (2003-10-24 11:16) より:

VB.NETで「GridLayout」でテキストボックスやラベルなどを並べた
ページを作成したのですが、表示する環境によってコントロールが重なってしまったり、
ずれてしまったりして難儀しております。
ちなみに「FlowLayout」にすると問題は解決しますが、画面構成が複雑のため、上記で開発したいと思っております。
(環境と言っても、Windows2000以上なのですが。。。)


 GridLayoutは、表示されたページのソースを見るとわかりますが、divタグ(またはstyleのposition)で位置を指定しています。全てのコントロールの位置を、ページの左上を基準に計算しますから、重くなるのは当然でしょう。データ量も増えるので、回線負荷も高くなります。また、位置の指定をデフォルトではピクセルでしていると思いますので、フォントサイズが違えばコントロールが重なったりするのも当然でしょう。これらを解決するためには、クライアントの環境(使用するフォント、画面解像度、表示倍率、スタイルシートの優先度)を全て同一とせねばなりません。

#そういうのも、「魔法の杖シンドローム」の1つなんでしょうね。


 ずれに関しては、文字のサイズを絶対サイズで指定すれば、ある程度防げると思います。
 重いのは、そういうものだとあきらめてください。

 あまりお勧めではありませんが、tableタグでレイアウトを整えるというのは、よく使われている手です。
NAK
ベテラン
会議室デビュー日: 2002/10/27
投稿数: 91
投稿日時: 2003-10-27 12:14
ありがとうございます。

使用するフォント、スタイルシートの優先度などは開発するときには全く
気にしていませんでした。クライアント側の設定で何とかなるものなのでしょうか?
1

スキルアップ/キャリアアップ(JOB@IT)