こんにちは、川合です。伝言板が復旧しましたが、もとのスレッドが なくなっているので、相変わらず、こっちに書きます。 かりんさん、見ているかなあ? Hidemi KAWAI は 2003/04/12 12:59:42 の「[OSASK 5978] Re: BOARD: mswp08 β 3 リリース」で書きました: > それで、ソースをざっとみたところ、レベル変更時のウィンドウクロ >ーズ&再オープンなどに少々問題があるようです。具体的にどのように >直せばいいのかを詳しく説明したいのですが、もしかしたらそのうちに >OSASK伝言板が回復するかもしれず、それならその時に書きたいので、 >しばらくおまちください。直らなければ、ML上で説明します。 それでは早速、問題点の指摘を。 ・ウィンドウはクローズしてからすぐにオープンしてはいけない。 (そういう場合は、クローズ完了を待つ必要がある) ・ウィンドウやテキストボックスをクローズしても、構造体がfreeさ れるわけではないので、何度もAUTOMALLOCしているとメモリがなく なってしまう。 (これはfreeしてやる方法と、最初にmallocした領域を何度も使う 方法がある。freeしてすぐにmallocするのはメモリ効率が悪くな りやすいので、ここでは、最初にmallocして以降はそれを繰り返 し利用するスタイルをおすすめします) ・level3で画面上の機雷の数を数えてみると、99個よりもずっと多い ・・・。 (これはcellの[]の中の計算の書き間違い) さらにこれは問題ではないのですが、もしちょっとサイズが気になる のでしたら、手軽な割には効果のあるテクニックを紹介しておきます(4 行追加するだけです)。 以上の具体的な修正例はここに書くには長いので、以下のファイルを ダウンロードしてください。 http://osask.ne.nu/bugfix00.lzh (1.31KB) もちろん、この修正案をそのまま使ってもいいですし、意を汲んで自分 の好きなように使ってもかまいません。 あとは細かいところをいじれば、よりサイズを小さくすることはでき ます。しかしまあ、もうそんなに大きくは改善しないような気もします 。 それでは。 -- 川合 秀実(KAWAI Hidemi) OSASK計画代表 / システム設計開発担当 E-mail:kawai !Atmark! imasy.org Homepage http://www.imasy.org/~kawai/