Добавить кнопку на панель инструментов Internet Explorer во время выполнения - PullRequest
1 голос
/ 11 мая 2010

В настоящее время я создаю простую дополнительную кнопку на панели инструментов Internet Explorer 7. Кнопка работает. Я использую Visual C ++.

Но теперь я хотел бы создать кнопку для создания кнопки во время работы моего Internet Explorer. Значит, при определенных условиях моя программа (dll, зарегистрированная в regsvr32) добавит кнопку на панель инструментов. и после определенного условия кнопка также может исчезнуть.

Как мне этого добиться?

Обновление:

Я пытался использовать эту строку:

ShowWindow(hWndButton, SW_HIDE);

Он скрывает мой браузер Internet Explorer. В диспетчере задач он все еще работает. Как заставить его скрыть только объект кнопки?

редактировать:

Я хочу изменить этот код ..

    STDMETHODIMP CButtonDemoBHO::Exec(const GUID*, DWORD nCmdID, DWORD d, VARIANTARG*, VARIANTARG* pvaOut){
ATLTRACE("CButtonDemoBHO::Exec\n");

switch (nCmdID){
case BUTTON_PRESSED:

MessageBox(m_hWnd, L"You have pressed the button", L"Button Pressed", MB_OK);

    <------- I would like to hide the button here.

    break;
case MENU_ITEM_SELECT:
MessageBox(m_hWnd, L"You have simulated a button press with the menu ", L"Menu Pressed", MB_OK);
    break;
   }
  return S_OK;
 }

1 Ответ

2 голосов
/ 13 мая 2010

Можете ли вы добавить кнопку всегда (как сейчас), но скрыть / показать ее, когда хотите, чтобы ее увидели?

Отредактировано, чтобы добавить:

Чтобы скрыть кнопку, вам нужно использовать ShowWindow(). Вот два способа:

  1. Если кнопка CButton, позвоните theButton.ShowWindow(SW_HIDE)
  2. Если кнопка представляет собой обычное окно, позвоните ShowWindow(hWndButton, SW_HIDE)

Повторно отредактировано:

Я нашел исходный код, который вы пытаетесь изменить: forum-assist .

По сути, какой бы класс ни определял кнопку или знает, как ее найти (вероятно, RebarHandler.cpp), вам следует добавить методы, чтобы показать и скрыть кнопку. Тогда вам нужно позвонить с CButtonDemoBHO::Exec().

Я не могу сказать вам, как перейти от CButtonDemoBHO к CRebarHandler без анализа всего проекта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...