С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/18: Рейтинг темы: голосов - 18, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 06.12.2015
Сообщений: 39

Переключение вкладок PageControl

07.12.2015, 02:11. Показов 3909. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток. Столкнулся с такой проблемой. Вот код, который должен по нажатию кнопок открывать новую вкладку, в которой будет новый браузер. Когда создается новая вкладка, на всех вкладках действия браузера повторяются, тобишь он один.

По кнопке
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void __fastcall TForm1::Button7Click(TObject *Sender)
{
TTabSheet* newtab;
TCppWebBrowser* newbrowser;
newtab = new TTabSheet(this);
newtab->PageControl = PageControl1;
newtab->Name = AnsiString("TabSheet")+IntToStr(PageControl1->PageCount+1);
PageControl1->SelectNextPage(true) ;
newtab->Caption = ComboBox1->Text;
newbrowser = new TCppWebBrowser(PageControl1);
newbrowser->TOleControl::Parent = newtab;
newbrowser->TOleControl::Name = AnsiString("CppWebBrowser")+IntToStr(PageControl1->PageCount+1);
newbrowser->TOleControl::Align = alClient;
 
newbrowser->Navigate(StringToOleStr(ComboBox1->Text));
 
 
}
По горячим клавишам
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
void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
      TShiftState Shift)
{
if((Key=='T')&&(Shift==TShiftState() << ssCtrl))
{
TTabSheet* newtab;
TCppWebBrowser* newbrowser;
newtab = new TTabSheet(this);
newtab->PageControl = PageControl1;
newtab->Name = AnsiString("TabSheet")+IntToStr(PageControl1->PageCount+1);
newtab->Caption = "NewTab";
newbrowser = new TCppWebBrowser(PageControl1);
newbrowser->TOleControl::Parent = newtab;
newbrowser->TOleControl::Name = AnsiString("CppWebBrowser")+IntToStr(PageControl1->PageCount+1);
newbrowser->TOleControl::Align = alClient;
}
}
//---------------------------------------------------------------------------
 
 
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Form1->KeyPreview=true;
}
//---------------------------------------------------------------------------
И еще вопрос. Чем CppWebBrowser отличается от WebBrowser?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.12.2015, 02:11
Ответы с готовыми решениями:

Стиль вкладок PageControl
Здравствуйте! Попытался сделать выделение жирным вкладок PageControl. Вот код void __fastcall...

Удаление вкладок в PageControl
Уже давно пытаюсь уничтожить динамически создаваемые вкладки в TPageControl, являющиеся производными от TTabSheet, + ко всему новый...

Перемещение и сортировка вкладок PageControl
Есть форма. На ней размещен PageControl с динамически создающимися страницами. Создаю 2-3 страницы. Каждая страница при этом называется...

4
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33371 / 21497 / 8234
Регистрация: 22.10.2011
Сообщений: 36,893
Записей в блоге: 12
07.12.2015, 10:53
Лучший ответ Сообщение было отмечено SoneLore как решение

Решение

Цитата Сообщение от SoneLore Посмотреть сообщение
Когда создается новая вкладка, на всех вкладках действия браузера повторяются
Проверил, ничего не повторяется, нормально создается одна вкладка с тем адресом, который выбран в ComboBox-е. Что-то в другом месте, значит, намудрено. Показывай проект, который воспроизводит ошибку.

Кстати, было бы проще вынести создание вкладки, размещение на ней браузера и переход по ссылке в отдельной функции, а потом просто эту функцию вызывать из двух событий.
0
Практикантроп
 Аватар для nick42
4841 / 2726 / 534
Регистрация: 23.09.2011
Сообщений: 5,798
07.12.2015, 11:57
Цитата Сообщение от volvo Посмотреть сообщение
Проверил, ничего не повторяется, нормально создается
Подтверждаю. У меня тоже код работает (проверил только по кнопке).
0
0 / 0 / 0
Регистрация: 06.12.2015
Сообщений: 39
07.12.2015, 13:28  [ТС]
Все работает, просто неправильно забросил сам браузер. Теперь вопрос, как включить Silent на всех браузерах? Все время ошибка сценария. Где именно в коде добавить Silent на браузера?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33371 / 21497 / 8234
Регистрация: 22.10.2011
Сообщений: 36,893
Записей в блоге: 12
07.12.2015, 13:33
После создания, но перед Navigate
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.12.2015, 13:33
Помогаю со студенческими работами здесь

Удаление динамически созданных вкладок PageControl
Всем доброго времени суток. Создаю при открытие формы вкладки на PageControle. Открываю форму так: ...

Открытие вкладок PageControl
У меня есть PageControl с созданными вкладками. При выборе из списка TreeView становиться активной необходимая вкладка. Мне нужно чтобы при...

Pagecontrol количество вкладок
У меня такая проблема, мне необходимо что бы программа посчитала сколько вкладок у pagecontrol, подскажите кто знает. (Вкладки создаются...

Прокрутка вкладок PageControl'a
Всем Привет!:) Есть PageControl с вкладками расположенными справа, но не простой, а TAdvOfficePager, поскольку вкладок может быть очень...

Добавление вкладок на PageControl
Здравствуйте! Мне необходимо добавить вкладку на PageControl, и с эти впринципе проблем нет. Но я не могу добавить на созданные вкладки...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru