クライアントウインドウのサイズ指定 – プログラミング – Home

クライアントウインドウのサイズ指定
 
通知
すべてクリア

[解決済] クライアントウインドウのサイズ指定


ガラ
 ガラ
(@ガラ)
ゲスト
結合: 20年前
投稿: 201
Topic starter  

クライアントウインドウのサイズ指定を
PreCreateWindow()でおこなっても、サイズがかわりません。
なぜでしょうか?ご存知のかたよろしくおねがいします。

BOOL CTestA2View::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: この位置で CREATESTRUCT cs を修正して Window クラスまたはスタ
イルを
// 修正してください。

cs.cy = 200 ;
cs.cx = 200;
return CView::PreCreateWindow(cs);
}


引用未解決
トピックタグ
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

これだけではなんともレスのつけようが無いと思いますよ。

作成しているアプリの構成に関して全く情報が出てません。
他の質問で書きましたは無しでお願いします。
この質問を読む人が前の質問を読んでいるとは限りません。
掲示板と言うのはそういうところです。

で、Document-Viewアーキテクチャを使ってウインドウを出す時に
CFormViewで無いならフレームウインドウのサイズの方に合わせられて
しまうのではないですか?
ウインドウのサイズを変えたいのであれば、フレームウインドウの方を
変えるべきなのでは無いかと思うのですけれど。


返信引用
ガラ
 ガラ
(@ガラ)
ゲスト
結合: 20年前
投稿: 201
Topic starter  

PATIOさん。レスありがとうございます。
OS XP,VC++6.0.(わすれていました。すいません。)
MDIのウイザードでスケルトンをつくって、デフォルトで出る、
クライアントウインドウサイズを変えようとしているのですが、
うまくいきません。
サイズを固定して、画像データを出そうとしています。


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 1301
 

だからー、PATIOさんは
「額縁はそのままでカンバスだけデカくしてもダメじゃね?」
と仰っております。


返信引用
ガラ
 ガラ
(@ガラ)
ゲスト
結合: 20年前
投稿: 201
Topic starter  

επιστημηさん、レスありがとうございます。
すいません、どうも、話が合わないので、本をあれこれ調べてみたら、
クライアントウインドウという言葉の使い方がまちがえていたようです。
MDIをウイザードで作成したときの、最初にひとつついてくる、
MDIの子ウインドウというのが正しいのだとおもいます。
このウインドウのリサイズができないので、困っています。
この子ウインドウの大きさを制御することによって、
4つの子ウインドウを同時表示したりしたいと思います。


返信引用
たいちう
 たいちう
(@たいちう)
ゲスト
結合: 23年前
投稿: 662
 

例えばこんな方法。

void CMy0410View::OnInitialUpdate()
{
CView::OnInitialUpdate();

GetParentFrame()->MoveWindow(10, 10, 500, 500);
}


返信引用
PATIO
(@patio)
Famed Member
結合: 3年前
投稿: 2660
 

MDIの場合は各子ウインドウにフレームウインドウが付きます。
良く見ればわかると思います。
それぞれの子ウインドウのビュウはそれぞれの子ウインドウのフレームに
はまっている状態なのでウインドウサイズを変えたいのであれば、
子ウインドウのフレームのサイズを変えないと駄目なのです。
その変え方は既にたいちうさんが書かれているのでそれを参考にしてください。

この辺のフレームウインドウとかビュウとかの用語はちゃんと勉強した方がいいです。
あと、使う側から見たウインドウといわれている単位は実際には複数のウインドウの
集合体です。どういうウインドウがどのように組み合わさって一つのウインドウを
構成しているのかもちゃんと勉強した方がいいです。


返信引用
ガラ
 ガラ
(@ガラ)
ゲスト
結合: 20年前
投稿: 201
Topic starter  

たいちうさん、PATIOさん、レスありがとうございます。
たいちろうさん、が載せてくださった、ソースをそのまま実行しますと
子ウインドウのフレームサイズをかえることに成功しました。
ありがとうございました。
BOOL CMyView::PreCreateWindow(CREATESTRUCT& cs)
でcs.cx,cs.cyをいじってもだめですね。
子ウインドウの中にはりついているので、自動調節されてしまうということですね。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました