Autor Beitrag
b|ack|otus
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Di 18.05.04 16:29 
hallo erstmal, also ich habe das problem return und webbrowser, mit den hier im forum beschriebenen verbesserungsvorschlägen, beseitigen können. jedoch funktionieren jetzt "F5" und "BS" nicht mehr... gibts da ne lösung sodass alle tastaturbefehle funktionieren? danke schonmal... :wink:
toms
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1099
Erhaltene Danke: 2



BeitragVerfasst: Di 18.05.04 17:52 
Zitat:
mit den hier im forum beschriebenen verbesserungsvorschlägen, beseitigen können


Hi,

Poste mal den Code hier (oder den Link). Dann schau ich's mir mal an.
b|ack|otus Threadstarter
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Di 18.05.04 18:34 
ausblenden volle Höhe Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
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); 
const 
  DialogKeys: set of Byte = [VK_LEFT, VK_RIGHT, VK_BACK, VK_UP, VK_DOWN, 
    $30..$39, $41..42, $44..$55, $57, $59..$5A]; 
var 
  iOIPAO: IOleInPlaceActiveObject; 
  Dispatch: IDispatch; 
begin 
  { exit if we don't get back a webbrowser object } 
  if (WebBrowser1 = nil) then 
  begin 
    Handled := System.False; 
    Exit; 
  end; 

  Handled := (IsDialogMessage(WebBrowser1.Handle, Msg) = System.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 in DialogKeys) then 
        // nothing - do not pass on the DialogKeys 
      else 
        FOleInPlaceActiveObject.TranslateAccelerator(Msg); 
  end; 
end; 

initialization 
  OleInitialize(nil); 

finalization 
  OleUninitialize;
also der ist aus dem schweizer delphi zentrum... was auch seltsam ist: wenn ein neuer browser zur laufzeit erzeugt wird dann ist es wieder anders, für alle browserfenster (return geht nicht dafür aber BS und F5 usw. strg+c geht trotzdem...). ne lösung wär vll. wenn ich wüsste wie man die aktuelle internetadresse auslesen lassen könnte? weiß jemand wie das geht, konnte ich im forum noch nicht finden sonst hätte ichs ja schon eingebaut... damit könnte ich sicher was machen...
b|ack|otus Threadstarter
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Di 18.05.04 20:13 
also denke ich werde BS durch nen button ersetzen, mit "edit1.Text:=WebBrowser1.LocationURL;" werd ich dann ne listbox machen usw...

aber wenn trotzdem jemand weiß wie ich die BS tastenfkt. reanimieren kann, dann wärs fett wenn der das hier rein posten würde...