🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.delphi
6 messages
6 total messages Started by konsul41 Thu, 29 Jun 2017 06:40
WebBrowser
#345934
Author: konsul41
Date: Thu, 29 Jun 2017 06:40
61 lines
2873 bytes
Delphi XE2

Mam dziwne zachowanie DBGrida z Webbrowser

Analizuje maile z indy
Na formie leży DBGrid oraz Webbrowser
w DBGrid mam
procedure TPocztaKontrahenta.DBGrid1DblClick(Sender: TObject);
begin
   ListView1.Visible:=false;
   Splitter3.Visible:=False;
   ListView1.Items.Clear;
   lista:=TStringList.Create;
   lista.Clear;
   html:= TStringList.Create;
   try
...
if ListView1.Items.Count>0 then
       begin
         ListView1.Visible:=true;
         Splitter3.Visible:=true;
       end;
       WebBrowser1.Navigate('about:blank');
       repeat
         Application.ProcessMessages;
         Sleep(0);
       until
         WebBrowser1.ReadyState = READYSTATE_COMPLETE;

       if WebBrowser1.Document.QueryInterface(IPersistStreamInit, 
PersistStreamInit) = S_OK then
       begin
         if PersistStreamInit.InitNew = S_OK then
         begin
           WebBrowser1.OleObject.Document.Write(html.Text);
         end;
       end;
     finally
       html.Free;
       lista.Free;
end;
I teraz po wykonaniu tego:
Zdarzenia myszy działają w DBGrid
Przesuwam mysz nad WebBrowser i przewijam scroll przewija się DBGrid, a 
nie Webbrowser
Klikam w Webbrowser i przewijam Webbrowser, a nie DBGrid.
Blokuje mi się DBDrid (nie działają operacje myszy)
Mysz nad Webbrowser.
Przewijam do początku Webbrowser i nie przesuwając myszy obracam skrol i 
zaczyna się przewijać DBGrid przechodzi do początku i koniec. Następnie 
nie przesuwając myszy przewijam w dół przewija się Webbrowser i po 
dojściu do końca Webbrowsera zaczyna przewijać się DBGrid.
Od kliknięcia w WebBrowser nie działają zdarzenia DBGrid1DblClick.
Wygląda to tak jakby Webbrowser przechwytywał zdarzenia "click" i nie 
przekazywał do DBGrid, z zdarzenia "Mousemove" przekazywał po 
przewinięciu się do początku lub końca.
Jedyna możliwość odblokowania DBgrid Click to klikniecie myszą na inny 
komponent np ListView1 i wtedy  DBGrid1DblClick działa.


Jak temu zapobiegać?
Re: WebBrowser
#345935
Author: m
Date: Thu, 29 Jun 2017 15:15
6 lines
983 bytes
> 
> Jak temu zapobiegać?
A zmiana wersji IE coś daje czy zawsze jets tak samo ?

M
Re: WebBrowser
#345936
Author: konsul41
Date: Fri, 30 Jun 2017 05:59
9 lines
1221 bytes
W dniu 29-06-2017 o 17:15, m pisze:
> 
>>
>> Jak temu zapobiegać?
> A zmiana wersji IE coś daje czy zawsze jets tak samo ?
> 
> M
Mam włączone automatyczne aktualizacje więc raczej nic to nie daje.
Taki sam efekt na windows 7 i 10
Re: WebBrowser
#345937
Author: mmm
Date: Fri, 30 Jun 2017 08:28
26 lines
1834 bytes
W dniu 2017-06-30 o 07:59, konsul41@wp.pl pisze:
> W dniu 29-06-2017 o 17:15, m pisze:
>>
>>>
>>> Jak temu zapobiegać?
>> A zmiana wersji IE coś daje czy zawsze jets tak samo ?
>>
>> M
> Mam włączone automatyczne aktualizacje więc raczej nic to nie daje.
> Taki sam efekt na windows 7 i 10

Kontrolka WebBrowser moze pracowac w trybe zgodności z różnymi wersjami 
IE , co prawda to ma bardziej wplyw na sposób rysowania HTML ale nie 
zaszkodzi sprawdzić

Do poczytania:
https://blogs.msdn.microsoft.com/patricka/2015/01/12/controlling-webbrowser-control-compatibility/

https://www.cyotek.com/blog/configuring-the-emulation-mode-of-an-internet-explorer-webbrowser-control

https://stackoverflow.com/questions/17922308/use-latest-version-of-internet-explorer-in-the-webbrowser-control


Zamknij problem w prosty projekt i opublikuj źródła

M
Re: WebBrowser
#345938
Author: Karol
Date: Fri, 30 Jun 2017 17:54
1 lines
1243 bytes
kssoft.cba.pl/Project.zip
Re: WebBrowser
#345939
Author: Karol
Date: Fri, 30 Jun 2017 17:56
5 lines
1481 bytes
W dniu 2017-06-30 o 19:54, Karol pisze:
> kssoft.cba.pl/Project.zip
>
Oczywiście trzeba połączyć go (ZConnection orza sql w query) ze swoją 
bazą, ponieważ tutaj nie mają znaczenia dane w dbgrid.
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads