それがたくさんあると、後で変更するときに少しメンドクサイですよね?
置換すれば一瞬だって?
そうだね!
でも、ここでは別のアプローチをしてみたいと思います。
プリプロセッサがあるじゃない
リソースファイル(.rc) でもマクロが使えます。マクロで単語を共通化しちゃいましょう。
Win32 アプリケーションのテンプレートプロジェクトで実験してみましょう。
//Microsoft Visual C++ で生成されたリソース スクリプトです。
//
#include "resource.h"
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/stringize.hpp>
#define SOFTWARE_NAME ソフト名
// ~~~~~~ 略 ~~~~~~~~
IDC_RESTEST MENU
BEGIN
POPUP "ファイル(&F)"
BEGIN
MENUITEM BOOST_PP_STRINGIZE(BOOST_PP_CAT(SOFTWARE_NAME,の終了(&X))), IDM_EXIT
END
POPUP "ヘルプ(&H)"
BEGIN
MENUITEM BOOST_PP_STRINGIZE(BOOST_PP_CAT(SOFTWARE_NAME,のバージョン情報(&A)...)), IDM_ABOUT
END
END
※[プロジェクトのプロパティ] - [リソース] - [追加のインクルード ディレクトリ] にパスを追加しましょう
これをビルドし、実行するとこうなります。
おわり。
追記
半角スペースを入れるには、 「\x20」とする必要があります。ちょっと不恰好ですね…

0 件のコメント:
コメントを投稿