連続で申し訳ありません。
大きなサイズのデータを読み込む時に、プログラム実行中のなのに、
フォームの表示がされません。(読み込み処理に時間がかかる為)
DOS窓等からプログラムにファイル名を指定して実行した時、
フォームを表示してからデータを読み込み表示したいのです。
フォームを表示してから読み込み処理を起こすようには
できないのでしょうか?
これは、プログラムの作りを変えないとできないのでしょうか?
現状は、CXXXApp::InitInstance()で、ProcessShellCommand(cmdInfo)の
処理が走るとCXXXDoc::Serializeで読み込み処理を行っています。
なにか助言等ありましたら、ご教授ください。
VC6.0、Win200、MFCです。
> フォームを表示してから読み込み処理を起こすようには
> できないのでしょうか?
できます。そのようにプログラムを作ればよいのです。
逆にプログラムを作り変えないでプログラムの動きを変える事はできません。
> 現状は、CXXXApp::InitInstance()で、ProcessShellCommand(cmdInfo)の
> 処理が走るとCXXXDoc::Serializeで読み込み処理を行っています。
OnInitDialog()内でShowWindow()を呼び出した後、読み込んでください。
ファイル名は、ダイアログクラスのメンバ変数などに保存しておきます。
dairygoodsさんお返事どうもありがとうございます。
情報が少なくて申し訳ありません。
エディタを作成していますのでダイアログベースではないのです。
Viewベースで、どこで表示を行っているのかが良くわかりません。
Viewのフレーム等の表示は何という関数で行っているのでしょうか?
Viewの場合はOnInitialUpdate()で初期化をしています。
もし、ここでのShowWindowがうまく行かないようでしたら、
OnPaint()が初めて呼び出されたときに読み込むなどしてみてください。