-
Постов
58 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные afors
-
-
Проблема решилась динамическим созданием/удалением TWebBrowser:
... var Form1: TForm1; DynBrowser: TWebBrowser; implementation {$R *.fmx} procedure TForm1.WebBrowser1DidFinishLoad(ASender: TObject); var aThread: TThread; begin aThread := TThread.CreateAnonymousThread( procedure begin TThread.Synchronize(nil, procedure begin Image1.Bitmap := DynBrowser.MakeScreenshot; DynBrowser.Free end) end); aThread.FreeOnTerminate := true; aThread.Start; end; procedure TForm1.Button1Click(Sender: TObject); begin DynBrowser:=TWebBrowser.Create(self); DynBrowser.Parent:=TabItem2; DynBrowser.Align:=TAlignLayOut.Client; DynBrowser.OnDidFinishLoad:=Form1.WebBrowser1DidFinishLoad; DynBrowser.Navigate(Memo1.Text); DynBrowser.Free; end; ...
-
-
Так работает, хоть и не до конца понимаю такой подход. Это запуск процедуры в потоке?
Спасибо, Равиль!!!
-
Всем доброго дня или вечера...
Пытаюсь разобраться как получить скриншот загруженной страницы в Image1. У WebBrowser1 есть встроенная функция WebBrowser1.MakeScreenshot. Если по нажатии на Button1 выполнить код
Image1.Bitmap:=WebBrowser1.MakeScreenshot;
, то все работает. А если выполнить этот же код при срабатывании события OnDidStartLoad, приложение зависает.
Как это побороть?
PS: файл проекта прилагается...
-
1 час назад, Anasazi сказал:
Доброго времени суток! Есть приложение в котором используется TWebbrowser, хотел сделать чтобы при свайпе справа-налево выполнялся WebBrowser.GoBack, но обнаружил что жесты работают везде кроме TWebbrowser. Подскажите пожалуйста есть ли какое-либо решение этой проблемы? RAD Studio Berlin Update 1.
Ответ Равиля на похожий вопрос: "... нативные компоненты всегда располагаются выше стилизованных.
ждать нужно будущих версии студии, там будут нативные компоненты под андроид и ZOrder"
-
Работает, спасибо)
-
...
type TOpenTimeEdit = class(TTimeEdit);
...
{$R *.fmx} procedure TForm1.Button1Click(Sender: TObject); begin TOpenTimeEdit(TimeEdit1).OpenPicker; end;
...
-
В 06.10.2015 в 01:57, Ufomaster сказал:
Как при переходе с эдита на эдит очистить предыдущий текст в клавиатуре, что бы он не попал в новый эдит при нажатии на любой символ?
Думал, у меня одного такой глюк ))
Клавиатура TouchPal
-
Как создать или получить KeyStore File?
Вопрос решился. Я создал пустой файл и только потом указал к нему путь. Rad Studio сама должна создать его )
-
procedure TForm1.Button1Click(Sender: TObject); Var s: String; begin s := '×123.txt'; If FileExists (s) Then ShowMessage(s + ' yes') Else ShowMessage (s+ ' No'); end;
Вот так FileExists находит файл с символом × в имени. Но этот файл был создан обычным проводником Windows. Total Commander отказался создавать такой файл, заменив × на вопросительный знак.
Файл создается программой?
-
2 часа назад, OnePeople сказал:
В имени файла есть символ × с ним не находит, как побороть?
× - это умножить?
-
Только что, Равиль Зарипов (ZuBy) сказал:
чаще всего такое поведение из-за неправильной высоты текста
это как-то можно отследить?
Текст программно не меняется, он "как есть" с дизайнера проекта, выравнивание по Client
-
-
8 часов назад, Fedor K сказал:
У стандартного TListView уже все есть:
Спасибо!!!!!
-
Нашел решение через TTreeView: TreeView1.ShowCheckBoxes:=True;
То что нужно. Но хотелось бы все же увидеть реализацию через ListView.
-
Подскажите как реализовать список из CheckBox как на картинке. Думаю использовать ListView. Список не большой, до 300 элементов. Если можно пример динамического создания одного чекбокса в ListViewItem. Или может есть более удобные компоненты для реализации этой задачи?
Если подобная тема уже поднималась, то можно ссылку на нее...
-
Интересно будет увидеть код на PHP. Спасибо за статью!
-
При этом приложение должно быть запущено и опрашивать сервер?
-
Равиль, а что дают такие уведомления? Можно на примере популярных приложений или вкратце объяснить?
-
-
1 час назад, Kitty сказал:
И еще курсы Ярославы были очень полезными. Даже С++ сишникам все было понятно...:)
Ну это я про себя.
Присоединяюсь к вышесказанному!!!
Можно ли подробнее о курсах?
-
20 часов назад, kami сказал:
а если сделать не при запуске, а (временно) по нажатию на какую-нибудь кнопку, чтобы до перехода по URL WB 100% полностью инициализировался, отобразился и так далее.
У меня по нажатии на кнопку. Имеется ввиду при первом обращении к WB
unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants, FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.Controls.Presentation, FMX.StdCtrls, FMX.WebBrowser; type TForm1 = class(TForm) WebBrowser1: TWebBrowser; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.fmx} procedure TForm1.Button1Click(Sender: TObject); begin Webbrowser1.Navigate('https://maps.googleapis.com/maps/api/staticmap?center=55.026900,73.302900&size=400x400&sensor=true&format=png32&maptype=satellite&markers=color:0x000000|label:1'); end; end.
-
В 06.02.2017 в 11:40, rareMax сказал:
Попробуй так
Статья полезная, правку реестра уже сделал. Ничего не изменилось.
Насколько я понимаю, параметры в адресной строке указывают на то, что google должна вернуть снимок (рисунок) 400х400. Webbrowser1 пытается его скачать, вместо того, чтобы просто отобразить. С толку сбивает то, что это сообщение выходит только один раз при первом обращении к Webbrowser1. Пустяк, но раздражает...
-
Delphi 10.1 Berlin, Windows7x64, IE8
При запуске
Webbrowser1.Navigate('https://maps.googleapis.com/maps/api/staticmap?center=55.026900,73.302900&size=400x400&sensor=true&format=png32&maptype=satellite&markers=color:0x000000|label:1');
браузер будто пытается сохранить файл и выдает ошибку 'Не удалось загрузить staticmap из maps.googleapis.com'
При последующих запусках этого же URL Webbrowser1 правильно отображает картинку.
Как можно изменить URL или (лучше не URL) свойства Webbrowser1, чтобы избежать этой ошибки?
Заранее спасибо за любые советы
WebBrowser + ComboBox = ошибка ?
в Загрузка страницы
Опубликовано · Изменено пользователем afors
уточнение
Заметил странное поведение приложения при наличии обоих компонентов (WebBrowser1 и ComboBox1)
1. При раскрытии и закрытии списка ComboBox, браузер обновляет страницу. Причем не важно, перекрывает ли список браузер или нет.
2. Если список хоть раз раскрыли и СВЕРНУЛИ(!), то при закрытии программы вылетает ошибка, которая решается освобождением браузера (WebBrowser1.Free)
Второй вопрос не так важен, но хотелось бы знать причину такого поведения, если кто знает...
Но вопрос №1: очень прошу помощи - как сделать, чтобы при раскрытии ComboBox браузер не обновлял страницу?
Прилагаю пример проекта.
WB_CB_Err.zip
PS: Delphi 10.1 Berlin (UPD1 и UPD2)