Модераторы: MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> TWebBrowser русская кодировка. 
V
    Опции темы
Ak47black
  Дата 29.8.2007, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Здравствуйте.
Как TWebBrowser в поменять кодировку.
Я вывожу на TWebBrowser чат  и вместо русских букв вижу нето что надо  smile .
Поискал но решения не нашол.
Подскажите пожалуйста как исправить>  smile 

PM MAIL   Вверх
aktuba
Дата 29.8.2007, 18:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



в html, который выводишь, прописывай кодировку...


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ak47black
Дата 29.8.2007, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



aktuba, А как мне тут сделать (где ввести)?
Я вот так html ввожу
Код

var
  HtmlDocument: IHtmlDocument2;
  WebBody: HTMLBody;
  V: OleVariant;
begin
  HtmlDocument := TWebBrowser.Document as IHtmlDocument2;
  WebBody := HtmlDocument.body as HTMLBody;
  WebBody.insertAdjacentHTML('BeforeEnd', '<font face="Tahoma" size="2">Hello world</font>');


Это сообщение отредактировал(а) Ak47black - 29.8.2007, 21:20
PM MAIL   Вверх
aktuba
Дата 30.8.2007, 02:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Цитата

aktuba, А как мне тут сделать (где ввести)?


Судя по всему, перед этим блоком, что-то уже есть в WebBrowser. Верно?


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ak47black
Дата 30.8.2007, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Я делаю 
Код

TWebBrowser.Navigate('about:blank');

, а потом кодом который выше добавляю.
PM MAIL   Вверх
Ak47black
Дата 31.8.2007, 19:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



а что добавить то?

Это сообщение отредактировал(а) Ak47black - 31.8.2007, 19:33
PM MAIL   Вверх
December
Дата 31.8.2007, 20:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: 12
Всего: 57



изучи основы хтмл
там написано про обязательные элементы типа Head, body
сделай заготовку, которая содержит <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
и уже к ней применяй свой код
примеры можно найти в дркб


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Ak47black
Дата 2.9.2007, 21:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



December
А как добавить в Head тот код который ты написал выше?


Это сообщение отредактировал(а) Ak47black - 2.9.2007, 21:14
PM MAIL   Вверх
aktuba
Дата 2.9.2007, 21:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Цитата

А как добавить в Head тот код который ты написал выше?


Почитай про структуру документа html и все поймешь...


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ak47black
Дата 3.9.2007, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



aktuba, Да мне с html кодом то понятно.
Мне не понятно как в этот TWebBrowser добавить html код в заголовок.
Пробовал с WebBody.insertAdjacentHTML, но не работает.
PM MAIL   Вверх
December
Дата 3.9.2007, 09:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: 12
Всего: 57



невозможно добавлять элементы в хеад
надо навигировать на страницу, в которой он уже есть


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Ak47black
Дата 3.9.2007, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



December, а ну теперь понятнее ситуация.
Ок. буду пробовать. 
PM MAIL   Вверх
aktuba
Дата 3.9.2007, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Честно говоря не уверен, но попробуй что-то наподобии:
Код

var
  HTMLDocument: IHTMLDocument2;
begin
  HTMLDocument := WebBrowser.Document as IHTMLDocument2;
  HTMLDocument.charset := 'Windows-1251';
  // Или так
  // HTMLDocument.defaultCharset := 'Windows-1251';



--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ak47black
Дата 3.9.2007, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



aktuba, не проверил оба способа, но тоже самое.
December, а какие есть способы есть загрузить уже готовую страницу ?
Я попробовал загрузить из ресурсов.
Вот я сделал  
Код

TWebBrowser.Navigate('res://Project.exe/html/LOADHTML');

Но чтото не работает. (В ресурсах уверен что html есть проверял)
Ошибка
Цитата

Internet Explorer was unable to link to the Web page you requested. The page might be temporarily unavailable.

Я гдето в интернете видел исходник который демонстрирует, как и ресурсов загружать страницы, только шас не могу найти, может кто знает где такой есть?

Это сообщение отредактировал(а) Ak47black - 3.9.2007, 10:22
PM MAIL   Вверх
aktuba
Дата 3.9.2007, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Цитата

может кто знает где такой есть?


В DRKB и в DelphiWorld...

P.S.: ты бы тестовый проект выложил - людям проще было бы искать решение...

Это сообщение отредактировал(а) aktuba - 3.9.2007, 10:25


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ak47black
Дата 3.9.2007, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



У меня чтото в коде еше не правильно.
Потому что сделал тестовый проект и используя 
Код

ChatBrowser.Navigate('about:<html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"><title>Hello</title></head><body></body></html>');

Русские буквы видны.

Добавлено через 25 секунд
Спасибо все за ваши посты.
PM MAIL   Вверх
Ak47black
Дата 3.9.2007, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



Народ тут не изза html кодировки, тут изза Delphi кодировки чтото.
Если не верите сделайте такой код 
Код

procedure TForm1.FormCreate(Sender: TObject);
var
  HtmlDocument: IHtmlDocument2;
  WebBody: HTMLBody;
  V: OleVariant;
  Text: String;
begin
  WebBrowser.Navigate('about:<html><head><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"><title>Hello</title></head><body></body></html>');
  while WebBrowser.ReadyState < READYSTATE_INTERACTIVE do
    Application.ProcessMessages;
  HtmlDocument := WebBrowser.Document as IHtmlDocument2;
  WebBody := HtmlDocument.body as HTMLBody;
  Text:= 'Hello Абракадабра';
  WebBody.insertAdjacentHTML('BeforeEnd', '<font face="Tahoma" size="2">'+Text+'</font>');
  WebBody.insertAdjacentHTML('BeforeEnd', '<font face="Tahoma" size="2">Hello Абракадабра</font>');
end;

Получите
Цитата

Hello ÀáðàêàäàáðàHello Абракадабра

Есть какието предположения как это можно исправить?
И еше прикрепляю тестовый проект

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  Hello_Abacadabra.rar 1,86 Kb
PM MAIL   Вверх
aktuba
Дата 3.9.2007, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Цитата

Получите


Код

Hello АбракадабраHello Абракадабра


Все нормально!!!


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ak47black
Дата 3.9.2007, 11:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



aktuba, Ну какая версия Delphi?
Я еше раз проверил, у меня всеровно тоже самое (неправильно).

PM MAIL   Вверх
aktuba
Дата 3.9.2007, 13:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Смышленный
***


Профиль
Группа: Завсегдатай
Сообщений: 1915
Регистрация: 24.4.2006
Где: Планета Земля

Репутация: нет
Всего: 38



Цитата

Ну какая версия Delphi?


TurboDelphi...


--------------------
user posted image
PM MAIL WWW Skype   Вверх
Ak47black
Дата 3.9.2007, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2205
Регистрация: 2.12.2005

Репутация: нет
Всего: 0



aktuba, Тут скорей всего что версия другая.
А у когонибудь есть Delphi 7? Можете ктонибудь просто проверить?
PM MAIL   Вверх
elementos
  Дата 19.2.2008, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 10.12.2007

Репутация: нет
Всего: нет



у меня открывается браузер с таким кодом:

Код

s := concat('about:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">',  #10#13,
'<head>', #10#13, '<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">', #10#13, '</head>', #10#13,
'<body>', #10#13, '</body>');
webbrowser.Navigate(s);


он работает в режиме редактора (DesignMode := 'On')
когда только запустить приложение, и ничего не делать (не изменять содержимое) то можно увидеть через исходный код страницы, что кодировка 1251, но когда что-то напишешь в нем, и посмотреть, то она сразу становится unicode.
что за ( smile ) и как исправить?

Это сообщение отредактировал(а) elementos - 19.2.2008, 00:30
PM MAIL   Вверх
elementos
Дата 20.2.2008, 10:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 10.12.2007

Репутация: нет
Всего: нет




аyу, есть кто живой?... 
PM MAIL   Вверх
Страницы: (2) [Все] 1 2 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: ActiveX/СОМ/CORBA"

Rrader
Girder

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Delphi
  • Вопросы по SQL и вопросы по базам данных, не связанные с Delphi, задавать здесь

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Rrader, Girder.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: ActiveX/СОМ/CORBA | Следующая тема »


 




[ Время генерации скрипта: 0.1006 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.