0

CMFCToolBar と CMFCMenuBar を使用する MFC アプリケーションを作成しました。初めてアイテムの状態を保存します。動的アイテムを変更または追加すると、最初の状態が表示されますが、削除されたアイテムはそこにとどまり、追加されたアイテムは表示されません。その後、すべてのアイテムがレジストリでシリアル化され、毎回読み込まれることがわかりました。私たちのすべてのアプリケーションは、アプリケーションのモジュールから動的なメニュー項目またはツールバー ボタンをロードします。

class CToolBarEx : public CMFCToolBar
{
public:
    CToolBarEx()
    {
    }

    virtual BOOL LoadState(LPCTSTR /*lpszProfileName*/ = NULL, int /*nIndex*/ = -1, UINT /*uiID*/ = (UINT) -1)  {   return FALSE;   }
    virtual BOOL SaveState(LPCTSTR /*lpszProfileName*/ = NULL, int /*nIndex*/ = -1, UINT /*uiID*/ = (UINT) -1)  {   return FALSE;   }


};
class CMenuBarEx : public CMFCMenuBar
{
public:
    CToolBarEx()
    {
    }

    virtual BOOL LoadState(LPCTSTR /*lpszProfileName*/ = NULL, int /*nIndex*/ = -1, UINT /*uiID*/ = (UINT) -1)  {   return FALSE;   }
    virtual BOOL SaveState(LPCTSTR /*lpszProfileName*/ = NULL, int /*nIndex*/ = -1, UINT /*uiID*/ = (UINT) -1)  {   return FALSE;   }


};

ツールバーやメニューバーに動的アイテムを追加するために使用できる唯一の方法でしたが、これは解決策ではありません.カスタマイズツールを利用したり、メニューバーの位置を保存したりしていません.これはマイクロソフトが人々に望んでいることですか?メニューとツールバーで? 一度押すと変更は許可されませんか?または私はこれについて何かが欠けていますか?

4

1 に答える 1