2013-09-20 1 views
0

я это ::Как установить границы и другие стили объекта плагина со стороны JSAPI?

FB::DOM::ElementPtr _element=m_host->getDOMWindow()->getDocument()->getBody()->getElementById("plugin0"); 

Я получил элемент (то есть. Объект тегов плагина, который я хотел) по идентификатору. Он компилируется. Теперь я хочу установить его свойство со стороны JSAPI ... например, стиль и ширина цвета рамки .... Я прошел через this page. Я мог найти только один метод «setInnerHtml» ... который устанавливает что-то. Что я должен передать в своем аргументе ...? У него есть std :: string type ... так что я могу манипулировать документом плагина. Любые идеи ... В принципе, я хочу установить атрибут тега со стороны PluginAPI .....

ответ

1

Честно? Вам будет намного лучше разместить плагин в div на 100% x100%, а затем управлять границей div. Для чего-то вроде этого я бы просто использовал:

m_host->evaluateJavascript("document.getElementById('pluginCont').style.border = '1px solid black';"); 

Это будет самый простой. Вы также можете посмотреть код абстракции DOM и добавить некоторые инструменты для управления CSS; обратите внимание, что в IE вам может понадобиться использовать специальные методы activex, поэтому я не рекомендую просто делать это через getDOMElement() (что является сокращением, кстати, для длинного кода, который у вас есть в вашем примере)

+0

Цените ваш ответ. Меня больше всего интересовала картина границы плагина в основном через C++. Согласен Я могу выбрать этот метод, но я хочу сделать это –

+0

@taxilian ... Я надеялся, что смогу нарисовать окно плагина с помощью границы с помощью Windows GDI. Я узнал о продукте WinMessageWindow.h, который может генерировать сообщения для окна, чтобы рисовать границы и другие объекты на клиентском прямоугольнике. Как использовать его в приложении Windows Attached. –

+1

Нет причин вы не могли, но я понятия не имею, что это касается этого вопроса. Если у вас вопрос о том, как рисовать, я бы посмотрел пример FBTestPlugin и/или искал, как рисовать с помощью firebreath; если вы не можете найти его, напишите об этом. – taxilian

 Смежные вопросы

  • Нет связанных вопросов^_^