掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
CViewで拡張子を追加したい (ID:54357)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
--------------------------------------------------------------------- 1. *.htm と *.html のような、ファイルの種類は同じだけど拡張子が違う場合 まず、CWinApp 派生クラスの InitInstance の中で CDocTemplate 派生クラス(CSingleDocTemplate / CMultiDocTemplate )の インスタンスを作っているところに着目してください。 コンストラクタの第一引数を覚えておきます。 次に、String Table リソースを見て、さっきの第一引数と同じ ID を持つ 文字列を探します。 \n で区切られた文字列になっているはずですが、それを \n ごとに分解 すると、その4番目がファイルダイアログに表示するフィルタ名、 5番目が実際のフィルタ文字列になっています。 ここに、セミコロンで区切って複数の拡張子を書いてやれば実現できます。 --------------------------------------------------------------------- 2. *.html と *.exe など、複数のファイルの種類に対応したい場合 まず、CWinApp 派生クラスの InitInstance の中で CDocTemplate 派生クラス(CSingleDocTemplate / CMultiDocTemplate )の インスタンスを作っているところに着目してください。 これを真似して、ファイルの種類の数だけ CDocTemplate 派生クラスの インスタンスを作ります。 その際、コンストラクタの第一引数に注意してください。 ファイルの拡張子、ドキュメントの名前などは、この第一引数と同じ ID を 持つ StringTable リソースから取得されるため、ファイルの種類の数だけ StringTable に文字列を追加してやる必要があります。 作成したすべての CDocTemplate インスタンスを AddDocTemplate で追加 してやれば、複数の拡張子に対応できます。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.