Использование MSHTML для графического интерфейса в C ++, возможно, есть учебник? - PullRequest
4 голосов
/ 25 января 2009

Я хотел бы перевести мое приложение на использование MHTML для графического интерфейса, поскольку было бы намного проще экспериментировать с макетами, не переписывая C ++ каждый раз.

То, что я нашел, к сожалению, не то, что мне нужно, а именно:

  • Поток HTML из памяти
  • Получение событий, таких как onclick и т. Д., Обратно в мой код C ++
  • Управляйте им через DOM, например, установите innerHtml определенного элемента

1 Ответ

2 голосов
/ 25 января 2009

Уродливая часть будет получать события. Непосредственное кодирование COM-интерфейса MSHTML в C ++ для присоединения логики к HTML-интерфейсу HTML будет довольно уродливым, если вы сделаете это «сырым». Вы, вероятно, захотите, чтобы тонкий слой библиотечного кода находился между логикой приложения и HSHTML, чтобы скрыть падение, связанное с COM.

В конечном счете, это переосмысление таких вещей, как XUL в Firefox - см. http://en.wikipedia.org/wiki/XUL.. Возможно, вы найдете это более готовым для использования таким образом. Вы бы использовали движок Gecko вместо MSHTML.

Или вы можете использовать WPF, что опять-таки очень похоже. Учитывая, что вы работаете в Windows (так как вы довольны зависимостью от MSHTML), вы можете написать материал с графическим интерфейсом на C # и связать его с кодом C ++, представив это с помощью C ++ / CLI.

...