0

ツールバーを使用してMFCDocument-Viewアプリケーションを作成しています。メインフレームウィンドウの右上隅にツールバーを追加したいと思います。現在、以下のコードを使用してツールバーを設定しています

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP | CBRS_BORDER_RIGHT
    | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
    TRACE0("Failed to create toolbar\n");
    return -1;      // fail to create
}

上記のコードは、メインフレームの左上隅に料金所を作成します。左隅から右隅にシフトしたい。ツールバーを右上隅に配置したい。

MFCには、右側、左側、上部、下部にツールバーを設定するためのオプションがあります。ただし、右上に設定するオプションはありません

前もって感謝します!

4

2 に答える 2

1

既存のツールバーの左側に別のツールバーを作成して、空のままにしておくことができる場合があります。残っているスペースに合わせてサイズを変更します。

申し訳ありませんが、ツールバーを使用して詳細を提供してから時間がかかりすぎました。

于 2012-05-11T14:40:47.633 に答える
0

私の知る限り、これを行う唯一の方法は、中央にダミーボタンを追加し、ボタンを最後に移動することです。

    LPTBBUTTON  newbutton=NULL;
    newbutton=(LPTBBUTTON)calloc(20,sizeof(TBBUTTON));
    int i=0;

    for(i=0;i<20;i++)
    {

        newbutton[i].iBitmap=-1;// for dummy button
        newbutton[i].idCommand=1222;
        newbutton[i].fsState=TBSTATE_ENABLED;
        newbutton[i].fsStyle=TBSTYLE_BUTTON; //TBSTYLE_SEP;
        newbutton[i].iString=-1;

     }
     m_wndToolBar.GetToolBarCtrl().AddButtons(20,newbutton) // this will add 20 new buttons 
     m_wndToolBar.GetToolBarCtrl().MoveButton(1,20);// This will move button from left to right

ただし、このモデルの唯一の問題は、最大化オプションを処理するようにボタンを調整することです。最大ボタン押下を処理し、ボタンゲインを右に移動する必要があります。

オプションがあれば教えてください。ありがとう

于 2012-05-11T14:23:17.063 に答える