Как отображать последние новости из веб-новостей в приложении delphi firemonkey?

Ну у меня есть программа и сайт, сайт приходится расставаться с последними новостями, только отформатированный с помощью CSS3 и т.д... Я понятия не имею, как в моей программе delphi отображать последние новости, так как TWebBrowser не прозрачен , не может отображать CSS3 и HTML5, есть ли другой способ?


person Community    schedule 22.05.2012    source источник


Ответы (2)


Публикуйте свои новости в RSS-канале. В вашей программе извлеките этот канал с помощью чего-то вроде Indy, извлеките важные части с помощью синтаксического анализатора XML и представьте его так, как хотите. Для этого вам не нужно встраивать веб-браузер.

Вы можете настроить свой веб-сервер так, чтобы он генерировал страницу новостей, используя входные данные из того же RSS-канала.

person Rob Kennedy    schedule 22.05.2012
comment
+1. Ну, на самом деле, я согласен, за исключением того, что парень, кажется, влюблен в CSS3 и HTML5. :-) - person Warren P; 23.05.2012

Попробуйте Delphi Chromium Embedded. Он имеет те же функции HTML5 и CSS, что и Google Chrome, более или менее. Однако из коробки нет поддержки Adobe Flash. Я еще не использовал его с Firemonkey, но есть демонстрация этого здесь.

person Warren P    schedule 22.05.2012
comment
Что вы подразумеваете под необходимостью прозрачности? - person Warren P; 22.05.2012
comment
Компонент должен иметь прозрачный фон, потому что у программы есть фон.. - person ; 22.05.2012
comment
Сделайте себе одолжение и сделайте фон вашей программы фоном страницы, которую вы загружаете в Chromium Embedded. Я не думаю, что вы сможете сделать любой компонент типа веб-браузера прозрачным. В конце концов, их природа состоит в том, чтобы отображать полные страницы, включая фон (который, вероятно, по умолчанию белый)... - person Marjan Venema; 22.05.2012
comment
Как сказал @MarjanVenema, зачем это менять? Конечно, это подрывает концепцию веб-браузера/веб-страницы, не так ли? - person ; 22.05.2012
comment
Если у ОП есть опыт работы в его программе, он вообще не должен использовать элемент управления веб-браузером. Он должен согласиться с идеей Роба. Не так сложно показать ваши новости, используя собственные элементы управления VCL или Firemonkey. - person Warren P; 23.05.2012
comment
@Marjan, класс CefWindowInfo, используемый в частном методе CreateBrowser, должен иметь член SetTransparentPainting, но во-первых, оболочка Delphi не реализует его, а во-вторых, в версии для Firemonkey для параметра m_bWindowRenderingDisabled установлено значение True, что позволяет рисование владельцем содержимого браузера (что дает вам еще большую гибкость). Взгляните на TCustomChromiumFMX.doOnPaint и TCustomChromiumFMX.Paint в ceffmx.pas. - person TLama; 23.05.2012