Page 1 of 2 1 2 LastLast
Results 1 to 15 of 22

Thread: TWebBrowser - Geen enter key

  1. #1

    TWebBrowser - Geen enter key

    wanneer ik een html laad in de webbrowser, en de html file heeft een box waar je tekst kunt invoeren.

    en hier is het probleem, Ik kan dan geen ENTER gebruiken om naar de volgende regel te gaan

    Hoe los je dit op


    Alvast bedankt

  2. #2
    notice-itter SvG's Avatar
    Join Date
    Apr 2002
    Location
    's-Hertogenbosch
    Posts
    4,865
    Zou je je probleem iets duidelijker kunnen beschrijven, het is ( vindt ik ) een beetje onduidelijk.
    !

  3. #3
    Senior Member PsychoMark's Avatar
    Join Date
    Nov 2001
    Location
    Raamsdonksveer
    Posts
    10,269
    Van wat ik ervan begrijp heb je een aantal invoervelden en wil je met enter naar het volgende veld? Je zou misschien KeyPreview van het Form op true kunnen zetten en dan met OnKeyPress een enter veranderen in een tab, maar als je dan een multiline invoerveld in je HTML hebt gaat het helemaal fout...

    Het beste is denk ik javascript gebruiken, er zijn volgens mij genoeg voorbeelden van...
    Qui custodiet ipsos custodes

  4. #4
    notice-itter SvG's Avatar
    Join Date
    Apr 2002
    Location
    's-Hertogenbosch
    Posts
    4,865
    je bedoelt dat er een Memo aanwezig is in de html-code. Door nu naar de volgende regel te springen ( enter ) moet je dus naar de volgende regel springen. Denk dat je dit bedoelt. Had het nog een keer gelezen en toen begreep ik het wel ( denk ik ). Ik weet het niet zeker, want psychomark denkt dat je naar het volgende memo wilt springen of zo. Maar verder is het wel hetzelfde:

    Enter toets opvangen en doorsturen naar de Webbrowser. Iets met sendmessage of misschien wel een standaard procedure in de webbrowser zelf.
    !

  5. #5
    Originally posted by SVG_1986
    je bedoelt dat er een Memo aanwezig is in de html-code. Door nu naar de volgende regel te springen ( enter ) moet je dus naar de volgende regel springen. Denk dat je dit bedoelt. Had het nog een keer gelezen en toen begreep ik het wel ( denk ik ). Ik weet het niet zeker, want psychomark denkt dat je naar het volgende memo wilt springen of zo. Maar verder is het wel hetzelfde:

    Enter toets opvangen en doorsturen naar de Webbrowser. Iets met sendmessage of misschien wel een standaard procedure in de webbrowser zelf.
    yep dat is wat ik bedoel.

    ik kan er niks over vinden in de help van delphi
    en ook niet op het interpret

    Wie kan mij helpen.

    Alvast bedankt.

  6. #6
    Senior Member PsychoMark's Avatar
    Join Date
    Nov 2001
    Location
    Raamsdonksveer
    Posts
    10,269
    Oh wacht, enter werkt niet zoals het in IE normaal wel doet in een invoerveld?

    Vaag, vang je niet toch per ongeluk met KeyPreview de enter af ofzo?
    Qui custodiet ipsos custodes

  7. #7
    Nee

    Is het dan een bug in delphi ofzo

  8. #8
    notice-itter SvG's Avatar
    Join Date
    Apr 2002
    Location
    's-Hertogenbosch
    Posts
    4,865
    het probleem is volgens mij dat het formulier de enter-toets opvangt ipv de Twebbrowser.
    !

  9. #9
    Heb jij dan misschien een code voor mij

  10. #10
    Ik heb ff op het internet gezocht, en heb een code gevonden die werkt.


    Code:
    unit Unit1; 
    
    interface 
    
    uses 
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
      Dialogs, OleCtrls, ActiveX, StdCtrls; 
    
    type 
      TForm1 = class(TForm) 
        WebBrowser1: TWebBrowser; 
        procedure FormDestroy(Sender: TObject); 
        procedure FormCreate(Sender: TObject); 
      private 
        { Private declarations } 
        FOleInPlaceActiveObject: IOleInPlaceActiveObject; 
        procedure MsgHandler(var Msg: TMsg; var Handled: Boolean); 
      public 
        { Public declarations } 
      end; 
    
    var 
      Form1: TForm1; 
    
    
    implementation 
    
    {$R *.dfm} 
    
    procedure TForm1.FormDestroy(Sender: TObject); 
    begin 
      FOleInPlaceActiveObject := nil; 
    end; 
    
    procedure TForm1.FormCreate(Sender: TObject); 
    begin 
      Application.OnMessage := MsgHandler; 
    end; 
    
    procedure TForm1.MsgHandler(var Msg: TMsg; var Handled: Boolean); 
    var 
      iOIPAO: IOleInPlaceActiveObject; 
      Dispatch: IDispatch; 
    begin 
      { exit if we don't get back a webbrowser object } 
      if (WebBrowser1 = nil) then 
      begin 
        Handled := False; 
        Exit; 
      end; 
    
      Handled := (IsDialogMessage(WebBrowser1.Handle, Msg) = True); 
    
      if (Handled) and (not WebBrowser1.Busy) then 
      begin 
        if FOleInPlaceActiveObject = nil then 
        begin 
          Dispatch := WebBrowser1.Application; 
          if Dispatch <> nil then 
          begin 
            Dispatch.QueryInterface(IOleInPlaceActiveObject, iOIPAO); 
            if iOIPAO <> nil then 
              FOleInPlaceActiveObject := iOIPAO; 
          end; 
        end; 
    
        if FOleInPlaceActiveObject <> nil then 
          if ((Msg.message = WM_KEYDOWN) or (Msg.message = WM_KEYUP)) and 
            ((Msg.wParam = VK_BACK) or (Msg.wParam = VK_LEFT) or (Msg.wParam = VK_RIGHT)) then 
            //nothing - do not pass on Backspace, Left or Right arrows 
          else 
            FOleInPlaceActiveObject.TranslateAccelerator(Msg); 
      end; 
    end;

  11. #11
    TCustomDelphiFreak snoei's Avatar
    Join Date
    Aug 2001
    Location
    Two feet on the floor.
    Posts
    30
    Ik heb deze code gebruikt omdat als ik in google een zoekterm intikte en daarna op <enter> drukte geen reactie kreeg. Deze code werkte dan ook met google perfect. Maar als ik vervolgens op www.startpagina.nl ga zoeken en op enter klik werkt het NIET terwijl het zonder deze code wel werkte op startpagina.nl maar in google weer niet. Hoe kan dit worden afgevangen, iemand een idee?

    Volgens mij heeft het met de scripting van de pagina te maken.
    BASIC programmers never die, they GOSUB and don't RETURN.
    Old programmers also never die. They just branch to a new address.

  12. #12
    Waarschijnlijk komt dat inderdaad door alle vage javascript waar ze bij Startpagina dol op zijn.
    Marcel

  13. #13
    TCustomDelphiFreak snoei's Avatar
    Join Date
    Aug 2001
    Location
    Two feet on the floor.
    Posts
    30
    Het gebeurt bij diverse websites. Bijv. www.rabobank.nl.

    Ctrl-C werkt trouwens ook in beidde gevallen niet.
    BASIC programmers never die, they GOSUB and don't RETURN.
    Old programmers also never die. They just branch to a new address.

  14. #14
    TCustomDelphiFreak snoei's Avatar
    Join Date
    Aug 2001
    Location
    Two feet on the floor.
    Posts
    30
    Voor mij is het belangrijkste dat ik het <enter> probleem oplos. Met code werkt het op de ene reeks sites en op de andere reeks niet en zonder de code werkt het op de andere reeks sites maar op de ene reeks weer niet.

    Het is me overigens gelukt om het werkend te krijgen. Wat ik doe is alleen de <enter> afvangen in de messagehandler. En heb ik die afgevangen dan stuur ik er gewoon nog een <enter> achteraan die niet door de messagehandler wordt afgevangen:

    keybd_event(13,0,0,0);
    keybd_event(13,0,KEYEVENTF_KEYUP,0);
    BASIC programmers never die, they GOSUB and don't RETURN.
    Old programmers also never die. They just branch to a new address.

  15. #15
    EmbeddedWB is toch nog de enige die de hele TWebbrowser toetsen goed afhandeld.

Page 1 of 2 1 2 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 13
    Last Post: 03-Sep-04, 17:32
  2. bestand openen en dan.....
    By The Master in forum Algemeen
    Replies: 20
    Last Post: 31-Aug-02, 12:12
  3. Enter werkt niet bij textarea in TWebbrowser
    By dmwebmaster in forum Algemeen
    Replies: 2
    Last Post: 12-Aug-02, 16:02
  4. Virtual key codes
    By doggo18 in forum Algemeen
    Replies: 11
    Last Post: 11-Jul-02, 16:06
  5. Hoe verban ik KEY VIOLATION uit mijn programma
    By FreakyOne in forum Algemeen
    Replies: 3
    Last Post: 18-Mar-02, 00:27

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •