🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.delphi
Article #345934

WebBrowser

#345934
From: 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ć?
Technical Details
Message-ID: <oj27d4$ljq$1@portraits.wsisiz.edu.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!wsisiz.edu.pl!.POSTED.jue163.internetdsl.tpnet.pl!not-for-mail

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!wsisiz.edu.pl!.POSTED.jue163.internetdsl.tpnet.pl!not-for-mail
From: "konsul41@wp.pl" <konsul41@wp.pl>
Newsgroups: pl.comp.lang.delphi
Subject: WebBrowser
Date: Thu, 29 Jun 2017 08:40:37 +0200
Organization: http://www.wit.edu.pl
Message-ID: <oj27d4$ljq$1@portraits.wsisiz.edu.pl>
Mime-Version: 1.0
Injection-Date: Thu, 29 Jun 2017 06:40:37 -0000 (UTC)
Injection-Info: portraits.wsisiz.edu.pl; posting-host="jue163.internetdsl.tpnet.pl:95.48.160.163"; logging-data="22138"; mail-complaints-to="abuse@wsisiz.edu.pl"
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Thunderbird/52.2.1
X-Mozilla-News-Host: news://pl.comp.lang.delphi:119
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit