Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.54/13: Рейтинг темы: голосов - 13, средняя оценка - 4.54
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50

WebBrowser: переход между веббраузерами по нажатию кнопки

01.05.2017, 15:07. Показов 3102. Ответов 31
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, у меня такой вопрос: допустим в одну форму я добавил несколько элементов WebBrowser и к каждому из них подсоединил отдельный документ (текст) по определенному порядку. Можно ли добавить 2 кнопки ("Предыдущий" и "Следующий"), чтобы по нажатию например на "Следующий" он переходил именно на тот WebBrowser, который добавлен после активного (который открыт на данный момент)?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.05.2017, 15:07
Ответы с готовыми решениями:

Переход между страницами по нажатию кнопки
В C# только, только начал разбираться и у меня возник вопрос, как мне в C# сделать ссылку на объект. Допустим: есть некая страница...

По нажатию кнопки webBrowser должен получить фокус
По нажатию кнопки webBrowser должен получить фокус. Browser.Focus() срабатывает через раз. Т.е. нажал кнопку один раз - ничего не...

Переход к нажатию кнопки без мышки
Дано: окошко для ввода пользователем текста и кнопка. Нужно: после того, как пользователь ввел текст, он нажимает Enter и происходит...

31
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50
04.05.2017, 17:15  [ТС]
Студворк — интернет-сервис помощи студентам
YuryK, volvo, спасибо огромное! Особенно Вам, YuryK, очень круто помогли!
0
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50
03.06.2017, 22:16  [ТС]
YuryK, а можно вашим способом сделать так же по нажатию на строки DBGrid? Какой-нибудь общий обработчик
0
1040 / 856 / 335
Регистрация: 08.12.2016
Сообщений: 3,283
04.06.2017, 00:04
естественно. В гриде только одна запись реальная - текущая, остальные - нарисованные, поэтому в обработчике просто выбираем значение поля текущей записи набора данных, который и будет параметром для дальнейших действий
0
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50
04.06.2017, 11:43  [ТС]
YuryK, в DBGrid1DblClick надо же выбирать текущую запись?
0
1040 / 856 / 335
Регистрация: 08.12.2016
Сообщений: 3,283
04.06.2017, 13:37
зачем? в нем она всегда выбрана. Если нужна другая, в гриде же и перейдите.
в DBGrid1DblClick надо работать с текущей записью набора данных, в нем отображаемого
0
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50
04.06.2017, 20:01  [ТС]
YuryK, а куда тогда обработчик писать? Какое событие?
0
1040 / 856 / 335
Регистрация: 08.12.2016
Сообщений: 3,283
04.06.2017, 23:51
Delphi
1
2
3
4
5
procedure TForm3.DBGrid1DblClick(Sender: TObject);
begin
   dbGrid1.DataSource.DataSet.FieldByName('Id').AsInteger
  // это Id текущей записи грида
end;
0
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50
05.06.2017, 15:00  [ТС]
YuryK, Спасибо! И еще вопрос: можно ли в Delphi сделать так: н-р на форме 2 кнопки, нажимаешь на одну кнопку - выходит диалоговое окошко, где просит выбрать pdf документ, выбираешь, и если нажать на другую кнопку - этот pdf-документ сохраняется под необходимым порядковым числом в определенной папке?
0
1040 / 856 / 335
Регистрация: 08.12.2016
Сообщений: 3,283
05.06.2017, 15:10
естественно можно. настроить OpenDialog так, чтобы он показывал файлы с расширением pdf.
и кнопки достаточно одной
Delphi
1
2
3
4
5
6
7
8
procedure TForm3.Button1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then begin
    //копируем файл OpenDialog1.FileName в определеннкю папку
    //одним из понравившихся способов способов
 
  end;
end;
0
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50
06.06.2017, 12:26  [ТС]
YuryK, так же должно быть? для показа pdf файлов
Delphi
1
2
3
4
5
6
7
8
9
10
11
procedure TForm8.NavigatePage(APage: string);
var
   fn: string;
begin
  fn := ExtractFilePath(Application.Exename)+'uchebniki\' + APage +  '.pdf';
  if FileExists(fn) then begin
    Form7.CurrentPage := StrToInt(APage);
    Form7.Show;
    form7.AcroPDF1.LoadFile(fn);
  end;
end;
Добавлено через 19 часов 47 минут
YuryK,
и в событии написал так:
Delphi
1
2
3
4
5
6
7
procedure TForm8.DBGrid1DblClick(Sender: TObject);
var n:integer;
begin
  form8.close;
  n:=DBGrid1.DataSource.DataSet.FieldByName('Id').AsInteger;
  NavigatePage((Copy(n,6,10));
end;
но думаю, я вообще не туда пошел. Помогите разобраться, пожалуйста!

Добавлено через 5 минут
Цитата Сообщение от willgelm Посмотреть сообщение
NavigatePage((Copy(n,6,10));
Что нужно вот здесь прописать?
0
0 / 0 / 0
Регистрация: 15.03.2017
Сообщений: 50
08.06.2017, 16:20  [ТС]
YuryK,
Цитата Сообщение от willgelm Посмотреть сообщение
NavigatePage(Copy(Sender.Name, 6, 10));
можете объяснить вот эту строку, пожалуйста?
0
1040 / 856 / 335
Регистрация: 08.12.2016
Сообщений: 3,283
08.06.2017, 23:48
помнится параметром NavigatePage была строка вида '1', '2' и т.д.
т.к. этот код висел на обработчике меток с именами 'Label1', 'Label2', то этот оператор и вырезал из имени компонента нужный "номер".

Соответственно, в #30 должно быть просто
Delphi
1
NavigatePage(DBGrid1.DataSource.DataSet.FieldByName('Id').AsString);
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.06.2017, 23:48

Treeview, переход по элементам по нажатию кнопки
Здравствуйте! В общем есть кнопка по нажатию которой я перемещаюсь по Treeview: procedure TForm1.SledushClick(Sender: TObject); begin ...

Переход по вкладкам grid по нажатию кнопки
Подскажите как связать вкладки созданные с батонами что бы при нажатии батона менялись вкладки на grid

Treeview, переход по элементам по нажатию кнопки
procedure TForm2.SpeedButton1Click(Sender: TObject); begin treeview1.SetFocus; treeview1.Select(treeview1.Selected.GetPrev); ...

Переход на другую форму по нажатию кнопки
Сразу скажу что на Делфи не могу написать,так как курсовую заставили написать на супер Pascal ABC.NET.В Делфи эта проблема решается кодом...

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


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

Или воспользуйтесь поиском по форуму:
32
Ответ Создать тему
Новые блоги и статьи
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
У нас сейчас поговорку "Опять 25" нужно переделать на "Опять +35".
kumehtar 04.08.2026
С ностальгией вспоминаю времена моего детства, когда у нас и правда +25 - была максимальная температура летом. Раньше +25 °C реально казались вершиной жары, когда можно было весь день пропадать на. . .
Как ИИ начал спорить и врать (возможно почуяв опасность для себя от индустрии - уход от электроники).
Hrethgir 04.08.2026
Недельный диалог, на фоне событий с НПЗ. Да, из спирта можно получать бензин, и это не сложно. Но потом в схеме я решил избавиться от насоса, при этом полностью сделав контроль подачи спирта в. . .
Термопринтер QR701
Argus19 03.08.2026
Термопринтер QR701 Купил два термопринтера QR701. На сэлф-тесте написано: Language: PC936 (GB18030). Что означает, что принтеры могут печатать только латиницу и китайские иероглифы. Так же. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru