分割ウィンドウにかんして – プログラミング – Home

分割ウィンドウにかんして
 
通知
すべてクリア

[解決済] 分割ウィンドウにかんして


つばさ
 つばさ
(@つばさ)
ゲスト
結合: 24年前
投稿: 16
Topic starter  

こんばんわ、VC++入門で勉強中の青二才ですがよろしくお願いいたします。

分割ウィンドを用いたプログラムを作っています。
左ペイン?にBMP表示を右に描画ボタンを配置しました。
分割にする前はうまく描画できたのですが、分割にしたとたん
コンパイルも通らなく表示もできなくなりました。
描画ボタンのコードは以下です。
CaaaViewクラスで以下の関数を定義しました。

CaaaView.h //左側
:
BOOL Hyoji();
Void D_BMP();
:

CbbbDlg.cpp //右側
:
void CbbbDlg::OnButtonByouga()
{
if (CaaaView::Hyoji() == FALSE)
{
AfxMessageBox(エラー);
}
else
{
CaaaView::D_BMP();
}
}

ビルドのエラーは静的でないメンバ関数が正しくありません。
関数の定義を見直してくださいでした。
環境はwin2k,VC++6.0です。

ほんと初心者の質問で申し訳ございません。
どう直してよいか皆目検討がつきませんでした。
どうかご教授の程よろしくお願いいたします。


引用未解決
トピックタグ
n
 n
(@n)
ゲスト
結合: 21年前
投稿: 90
 

他のペインのビューの表示を更新したい場合は、
ドキュメントに対して「ビューを更新しろ」と言ってやります。

//元のビューの中で
GetDocument()->UpdateAllViews(this);

そうすると、呼び出し元以外の各々のビューのOnUpdate()が自動的に呼び出される
ので、この中で自クラスのメンバ関数なりを呼び出してやるといいです。

void CaaaView::OnUpdate()
{
if(Hyoji()==FALSE){...}
else D_BMP();
}


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

対処療法的には、nさんが紹介されている内容がヒントになりますが、

エラーの内容が理解できないようなら、C++言語の勉強を先にされた方がよろしいかと
思います。
どうも、C++言語の知識が無いままMFCを使ってプログラミングをしようとされている
ようですが、MFC自体がC++言語で構築されているのでC++言語の知識が無いとMFCを
使いこなせません。
MFCを使ってアプリを作ってみるよりもMFC無しのコンソールアプリケーションを使って
C++言語の入門書の勉強をされた方がいいと思います。
あと、ドキュメント・ビュー・アーキテクチャの勉強もしたほうが良いかな。
こちらはC++言語の勉強の後でもいいと思いますけれどね。
ドキュメント・ビュー・アーキテクチャについてはMSDNを参照すれば、
それについての記述があったと思いますよ。


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

ちなみにVC++の入門書でC++言語の勉強は出来ないと考えた方が良いです。
VC++というのはあくまでも開発環境なので、VC++の入門書は開発環境の入門書です。
C++言語の入門書を購入して勉強しないとC++言語の勉強は出来ないと思いますよ。


返信引用
つばさ
 つばさ
(@つばさ)
ゲスト
結合: 24年前
投稿: 16
Topic starter  

ご教授ありがとうございます。
早速C++の勉強からはじめます。
なにかお勧めの書物等ございますか?


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

これは人によって違うでしょうね。

私は、ソフトバンク社の「プログラミング講義C++」を使って
勉強しました。以前はハードカバーでしたが、今は装丁が変わっているようですね。
書名も「新装版 プログラミング講義C++」となっているようです。
柴田望洋さんが昔、Cマガジンで連載していた内容をまとめて加筆訂正したものだった
と思います。

私的にはよい本だったと思っています。
あと、実践になったらEffective C++でしょうかねぇ。
More Effective C++と言うのもあります。
この辺は基礎をやった後で良いと思うので参考程度に。

他の方でお勧めがあれば、教えてあげてください。
私の紹介は範囲が狭いので。


返信引用
つばさ
 つばさ
(@つばさ)
ゲスト
結合: 24年前
投稿: 16
Topic starter  

どうもありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

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