はじめまして。よろしくおねがいします。
開発環境は、OS:Windows XP、VC++ 6.0です。
画面サイズを変更時にダイヤログ上にあるチェックボックス、エディットボックス、
スタティックテキスト、月間予定表、プッシュボタンを再度その画面に合わせて配置
を変えたいのですが、どうすればよいのかまったくわかりません。
画面サイズは2種類(縦長版と横長版)に限定されており、最初の表示が横長のウィ
ンドウで、ユーザーが画面サイズを変更したあとにウィンドウのその時のサイズによ
り、どちらかにOnsize関数で指定するようにしています。
どのようにすればいいのか、ヒントだけでもお願いします。
>再度その画面に合わせて配置を変えたいのですが、どうすればよいのかまったくわかり
ません。
最も単純な方法は、ダイアログサイズを調整した後に、各コントロールの表示位置を
SetWidnowPos() で調整してやることです。
ダイアログクラスのWM_SIZEで、コントロールをMoveWindowとかすれば
出来ると思います。
GetWindowRectとかScreenToClientというようなメンバも使う事になるかもしれません。
渋木宏明(ひどり)さん、ともさん、レスありがとうございます。
まさかこんなに早く教えていただけるなんて思っていませんでした。
本当にありがとうございました。
お二人に教えていただいた関数の使い方を調べて解決したいと思います。
まだまだ初心者なので大変ですががんばりたいと思います。
すいませんがもう一つ質問させてください。
エディットボックスやスタティックテキストの大きさは変えられるのでしょうか?
例えば縦長のウィンドウの場合はテキスト欄を縦長に、横長のウィンドウの場合は
テキスト欄を横長に…というふうにウィンドウ画面サイズに合わせて大きさを変更
することは可能なのでしょうか?
>エディットボックスやスタティックテキストの大きさは変えられるのでしょうか?
ヘルプで SetWindowPos() API の引数を調べてみてください。
渋木宏明(ひどり)さん、ありがとうございます。
さっそく調べさせてもらいます。本当に助かりました。
またこれからもちょくちょく質問させてもらうかもしれませんが、
そのときもよろしくお願いします。