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

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

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

Re[3]: フォームのリサイズ時、縦横の割合を一定で行いたい


(過去ログ 61 を表示中)

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

■35132 / inTopicNo.1)  フォームのリサイズ時、縦横の割合を一定で行いたい
  
□投稿者/ hs (18回)-(2009/04/20(Mon) 19:21:14)

分類:[.NET 全般] 

お世話になっております。

VS2008 VBで開発しております。
たびたびの質問なのですが、先日から開発中のアプリの微調整に入っているのですが、フォームのリザイズの指定で困っています。

よく色々なアプリを触っているとフォームのリサイズが縦横同時に同率の割合でしか調整できないのを見かけます。

たとえば、縦の割合が100に対して:横は必ず50%の割合でという具合です。 

フォームのデザイン上この手法を取り入れたいのですが、VS2008では可能でしょうか?
どなたかわかる方ご教授お願いいたします。

引用返信 編集キー/
■35133 / inTopicNo.2)  Re[1]: フォームのリサイズ時、縦横の割合を一定で行いたい
□投稿者/ はつね (1001回)-(2009/04/20(Mon) 19:34:20)
はつね さんの Web サイト
No35132 (hs さん) に返信
> たとえば、縦の割合が100に対して:横は必ず50%の割合でという具合です。 

そのようにプログラミングすれば可能です。
プロパティ1つ設定すればできたりとかはなかったはずなので、Resizeイベントとかで計算してあげてだと思います。

引用返信 編集キー/
■35134 / inTopicNo.3)  Re[2]: フォームのリサイズ時、縦横の割合を一定で行いたい
□投稿者/ hs (20回)-(2009/04/20(Mon) 20:17:54)
No35133 (はつね さん) に返信
> そのようにプログラミングすれば可能です。
> プロパティ1つ設定すればできたりとかはなかったはずなので、Resizeイベントとかで計算してあげてだと思います。

たびたび感謝しています。
また説明足らずでした。

現状は Form1_ResizeEnd 時に以下のコードでは制御しております。

Dim FWidth As Integer = Me.Width
Dim FHeight As Double = Me.Width * 0.7
Me.Height = FHeight

言葉ではなんと表現したらよいのかがわからないのですが、リサイズしている途中の枠線が表示されているため、ユーザーからしてみればユーザーが調節した通りのリザイズ結果ではない事に私自身納得できていません。
強制的にといえばいいのか...リザイズ中の枠線も同時に Me.Width * 0.7 を常にキープしている状態といえば理解していただけるでしょうか?
ユーザーから見れば常にフォームのリザイズは一定の割合でしか行えないことも認識させたいのです。

プログラマーとして飯を食べているのですが、下手な説明になってしまし申し訳ありません。
よろしくお願いします。


引用返信 編集キー/
■35136 / inTopicNo.4)  Re[3]: フォームのリサイズ時、縦横の割合を一定で行いたい
□投稿者/ Jitta on the way (301回)-(2009/04/20(Mon) 23:50:05)
No35134 (hs さん) に返信
> ■No35133 (はつね さん) に返信
>>そのようにプログラミングすれば可能です。
>>プロパティ1つ設定すればできたりとかはなかったはずなので、Resizeイベントとかで計算してあげてだと思います。
>
> たびたび感謝しています。
> また説明足らずでした。
>
> 現状は Form1_ResizeEnd 時に以下のコードでは制御しております。
>

「リサイズ終了」というイベントがあるなら、「リサイズ中」というイベントもあるのではないでしょうか?
(考え方を示しました。)

縦、横、斜め、どの様に拡縮したか、知る必要が有りそうですね。縦に伸ばしたのに「縦=横の70%」だと、伸ばさなかったことになります。
引用返信 編集キー/


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

このトピックに書きこむ

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

管理者用

- Child Tree -