ダイアログベースのシリアル化 – プログラミング – Home

ダイアログベースのシリアル化
 
通知
すべてクリア

[解決済] ダイアログベースのシリアル化


nakamura
 nakamura
(@nakamura)
ゲスト
結合: 24年前
投稿: 15
Topic starter  

ダイアログベースのプログラミングを作成しているのですがダイアログにリストとエデ
ィットコントロールを作成しCstringArrayでリストの各項目とそれをクリックしたとき
の説明分を保存したいのですが、この2つの変数のシリアル化の仕方がわかりません。
現在はダイアログクラス内に2つの配列を保存してシリアル化しようとしているのですが
ダイアログにはIMPLEMENT_SERIALマクロが設定できないのどうすればよいのでしょう
か。
 それともダイアログクラスの外にデータ用のクラスを作成しそこでシリアル化してか
らダイアログのほうに渡すようにすればよいのでしょうか
 わかる方おられましたら、ご教授いただけますようよろしくお願いします。
開発環境は
 VC++ .NET2003 MFC Win XP SP1です


引用未解決
トピックタグ
通りすがり
 通りすがり
(@通りすがり)
ゲスト
結合: 24年前
投稿: 92
 

fwrite とかではダメですか?


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

ダイアログクラスに元々シリアル化は無いと思います。
そもそもダイアログをシリアル化する事自体が変だと思いますし。
シリアル化したいのは項目と説明文のデータなのですから
オブジェクト指向的に考えるならデータ用のクラスを作成するのが筋でしょう。
そこクラスをシリアライズ可能に実装すればいい。
ただ、CArchiveを使ったシリアライズにこだわる理由が特に無いなら
単純にSaveとLoadの機能を作成してCStdioFileクラスで直接出力とかでも
良いような気はします。
要は、再度読み込んで元の状態が再現できるような形式でファイルに書き出す事と
ファイルの内容を読み込んで元の状態を再現する事が出来ればいいだけの話ですから。


返信引用
nakamura
 nakamura
(@nakamura)
ゲスト
結合: 24年前
投稿: 15
Topic starter  

通りすがりさん、PATIOさん返信ありがとうございます。
いわれてみれば、そのとおりで恥ずかしい限りです。
そこで、今回はシリアライズの復習もかねてPATIOさんにご指摘いただいたように外部に
データ用のドキュメントクラスを作成してそこでシリアライズを行うことにしました。
もうちょっとがんばってみます。
どうもありがとうございました


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

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