Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
29 / 29 / 3
Регистрация: 11.02.2012
Сообщений: 339
1

WebBrowser не вызывается 2й раз

29.11.2013, 18:18. Показов 915. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Проблема заключается в следующем:
При 1м вызове события все работает отлично (рис 1):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
void __fastcall TForm1::ListBox1DblClick(TObject *Sender)
{
WebBrowser1->Offline = true;
 
AnsiString K,W,H;
K="http://82.199.103.62:7781/udp/233.34.28.27:1001";
TMemoryStream *stm = new TMemoryStream();
TStringStream *SS = new TStringStream(String(""));
 
W=WebBrowser1->Width;
W=IntToStr(StrToInt(W)-41);
H=WebBrowser1->Height;
H=IntToStr(StrToInt(H)-90);
SS->WriteString("<html>");
SS->WriteString("<head>");
SS->WriteString("</head>");
SS->WriteString("<body bgcolor=#444444>");
 
SS->WriteString("<div align=\"center\"> <input name=\"submit\" class=\"td2_trl\" onclick=\"vlc.playlist.play();\" value=\"Play\" src=\"http://iptvonline.3dn.ru/play.png\" type=\"image\"/> <input name=\"submit\" class=\"td2_trl\" onclick=\"vlc.playlist.stop();\" value=\"Stop\" src=\"http://iptvonline.3dn.ru/stop.png\" type=\"image\"/> <input name=\"submit6\" class=\"td2_trl\" onclick=\"vlc.audio.volume+=(-10);\" value=\"Vol -\" src=\"http://iptvonline.3dn.ru/minus.png\" type=\"image\"/> <input name=\"submit\" class=\"td2_trl\" onclick=\"vlc.audio.volume+=(+10);\" value=\"Vol +\" src=\"http://iptvonline.3dn.ru/plus.png\" type=\"image\"/> <input name=\"submit5\" class=\"td2_trl\" onclick=\"vlc.audio.toggleMute();\" value=\"Mute\" src=\"http://iptvonline.3dn.ru/mute.png\" type=\"image\"/> <input name=\"submit2\" class=\"td2_trl\" onclick=\"vlc.video.aspectRatio=(this.value);\" value=\" 4:3 \" src=\"http://iptvonline.3dn.ru/43.png\" type=\"image\"/> <input name=\"submit2\" class=\"td2_trl\" onclick=\"vlc.video.aspectRatio=(this.value);\" value=\"16:9\" src=\"http://iptvonline.3dn.ru/169.png\" type=\"image\"/> <input name=\"submit2\" class=\"td2_trl\" onclick=\"vlc.video.aspectRatio=(this.value);\" value=\"16:10\" src=\"http://iptvonline.3dn.ru/1610.png\" type=\"image\"/> <input name=\"submit3\" class=\"td2_trl\" onclick=\"vlc.video.toggleFullscreen();\" value=\"Fullscreen\" src=\"http://iptvonline.3dn.ru/full.png\" type=\"image\"/> <input type=\"image\" value=\"Audio 1\" onclick=\"vlc.audio.track=1;\" src=\"http://sporttv.clan.su/2_audio_1_thumb.jpg\"> <input type=\"image\" value=\"Audio 2\" onclick=\"vlc.audio.track=2;\" src=\"http://sporttv.clan.su/2_audio_2_thumb.jpg\"> </div> </div></div><div class=\"n j-htmlCode\"> ");
SS->WriteString("</body>");
SS->WriteString("</html>");
 
SS->SaveToStream(stm);
stm->Seek(0,0);
IPersistStreamInit *psi;
 
WebBrowser1->Navigate(L"about:blank");
   DelphiInterface<IStream> IStr;
    (new TStreamAdapter(stm, soReference))->QueryInterface(__uuidof(IStream), &IStr);
    int c = 5, d = 5;
    IStr->Write(&c, 5, NULL);
    IStr->Seek(LARGE_INTEGER(), STREAM_SEEK_SET, NULL);
    IStr->Read(&d, 2, NULL);
 
if (SUCCEEDED(WebBrowser1->Document->QueryInterface(IID_IPersistStreamInit,(void **)&psi)))
psi->Load(IStr);
 
delete stm;
delete SS;
 
 
psi->Release();
}
Но если же вызываешь событие еще раз страница пуста (рис 2)
Миниатюры
WebBrowser не вызывается 2й раз   WebBrowser не вызывается 2й раз  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.11.2013, 18:18
Ответы с готовыми решениями:

Почему функция вызывается один раз, а не бесконечное число раз
Программа показывает, как работать с анимацией цвета. Мы берём случайный цвет и медленно изменяем...

Функция не вызывается 2й раз
Смысл - функция служит для записи числа в массив (посимвольно) int* read(int mass) { int...

Событие вызывается несколько раз
Второй день, как стал изучать JavaScript. Пишу функцию, которая формирует список папок и файлов...

Функция вызывается несколько раз
Всем привет, имеется код: function showEdit(param) // Функция для отображения редактируемого...

3
29 / 29 / 3
Регистрация: 11.02.2012
Сообщений: 339
30.11.2013, 21:58  [ТС] 2
Блин, никак не могу решить проблему... Объясните в чем проблема. Уже что только не делал.
0
1408 / 571 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
01.12.2013, 06:53 3
C++
1
2
 WebBrowser1->Navigate(L"about:blank");
 Application->ProcessMessages(); //костыль
Добавлено через 5 минут
Цитата Сообщение от vetal0007 Посмотреть сообщение
SS->SaveToStream(stm);
это лишнее, можно упростить

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 WebBrowser1->Offline = true;
 
 AnsiString K,W,H;
 K="http://82.199.103.62:7781/udp/233.34.28.27:1001";
 TStringStream *SS = new TStringStream();
 IPersistStreamInit *psi;
 
 W=WebBrowser1->Width;
 W=IntToStr(StrToInt(W)-41);
 H=WebBrowser1->Height;
 H=IntToStr(StrToInt(H)-90);
 
 SS->WriteString("<html>");
 SS->WriteString("<head>");
 SS->WriteString("</head>");
 SS->WriteString("<body bgcolor=#444444>");
 SS->WriteString("<div align=\"center\"> <input name=\"submit\" class=\"td2_trl\" onclick=\"vlc.playlist.play();\" value=\"Play\" src=\"http://iptvonline.3dn.ru/play.png\" type=\"image\"/> <input name=\"submit\" class=\"td2_trl\" onclick=\"vlc.playlist.stop();\" value=\"Stop\" src=\"http://iptvonline.3dn.ru/stop.png\" type=\"image\"/> <input name=\"submit6\" class=\"td2_trl\" onclick=\"vlc.audio.volume+=(-10);\" value=\"Vol -\" src=\"http://iptvonline.3dn.ru/minus.png\" type=\"image\"/> <input name=\"submit\" class=\"td2_trl\" onclick=\"vlc.audio.volume+=(+10);\" value=\"Vol +\" src=\"http://iptvonline.3dn.ru/plus.png\" type=\"image\"/> <input name=\"submit5\" class=\"td2_trl\" onclick=\"vlc.audio.toggleMute();\" value=\"Mute\" src=\"http://iptvonline.3dn.ru/mute.png\" type=\"image\"/> <input name=\"submit2\" class=\"td2_trl\" onclick=\"vlc.video.aspectRatio=(this.value);\" value=\" 4:3 \" src=\"http://iptvonline.3dn.ru/43.png\" type=\"image\"/> <input name=\"submit2\" class=\"td2_trl\" onclick=\"vlc.video.aspectRatio=(this.value);\" value=\"16:9\" src=\"http://iptvonline.3dn.ru/169.png\" type=\"image\"/> <input name=\"submit2\" class=\"td2_trl\" onclick=\"vlc.video.aspectRatio=(this.value);\" value=\"16:10\" src=\"http://iptvonline.3dn.ru/1610.png\" type=\"image\"/> <input name=\"submit3\" class=\"td2_trl\" onclick=\"vlc.video.toggleFullscreen();\" value=\"Fullscreen\" src=\"http://iptvonline.3dn.ru/full.png\" type=\"image\"/> <input type=\"image\" value=\"Audio 1\" onclick=\"vlc.audio.track=1;\" src=\"http://sporttv.clan.su/2_audio_1_thumb.jpg\"> <input type=\"image\" value=\"Audio 2\" onclick=\"vlc.audio.track=2;\" src=\"http://sporttv.clan.su/2_audio_2_thumb.jpg\"> </div> </div></div><div class=\"n j-htmlCode\"> ");
 SS->WriteString("</body>");
 SS->WriteString("</html>");
 SS->Position = 0;
 
 
 WebBrowser1->Navigate(L"about:blank");
 Application->ProcessMessages(); //костыль
 
_di_IStream sa(*(new TStreamAdapter(SS, soReference)));
if (SUCCEEDED(WebBrowser1->Document->QueryInterface(IID_IPersistStreamInit,(void **)&psi)))
  psi->Load(sa);
 
 
 delete SS;
 psi->Release();

Что такое
C++
1
2
3
4
int c = 5, d = 5;
IStr->Write(&c, 5, NULL);
IStr->Seek(LARGE_INTEGER(), STREAM_SEEK_SET, NULL);
IStr->Read(&d, 2, NULL);
незнаю.

Добавлено через 21 минуту
Поместить html - код в TCppWebBrowser ( XE3 )
1
29 / 29 / 3
Регистрация: 11.02.2012
Сообщений: 339
01.12.2013, 07:05  [ТС] 4
Цитата Сообщение от _Dimon_ Посмотреть сообщение
это лишнее, можно упростить

Не по теме:

Спасибо ограмное, 2ю ночь уже сплю из-за этого!))

0
01.12.2013, 07:05
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.12.2013, 07:05
Помогаю со студенческими работами здесь

Функция вызывается несколько раз
Есть код anti-CSRF: &lt;?php class Security { public function __construct() { $this-&gt;log =...

Update вызывается 2 раз за кадр
При обычном запуске все работает правильно, но если скомпилировать игру то Update начинает...

Getline не вызывается во второй раз
В общем, учусь по учебнику Стенли Б. Липман, и там задание: &quot;Напишите программу использующую do...

Внешнее прерывание вызывается только 1 раз
Не могу понять почему прерывание только 1 раз вызывается, хотя вроде все по схеме делал. Тестировал...

Метод paintComponent() вызывается несколько раз
Три раза подряд вызывается метод paintComponent() import javax.swing.*; import java.awt.*;...

Сколько раз вызывается конструктор копирования
Почему n не увеличивается? Point(const Point&amp; src){ n++; set(src.x+1, src.y+1); cout &lt;&lt;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru