CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

TWebBrowser 不接受回车键

楼主Wit253(阿狼)2006-03-17 21:54:58 在 Delphi / VCL组件开发及应用 提问

哪位知道为什么TWebBrowser不接受回车,VB中都用得好好的,  
  虽然可以用   Application.OnMessage   :=   MsgHandler;   捕获但是以下的网页还是无法回车  
  <BODY   contentEditable="true">  
  aaa<br>  
  bbb  
  </BODY>  
   
  用EmbeddedWB也不能回车 问题点数:100、回复次数:9Top

1 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-03-17 23:18:47 得分 20

可能消息是被控件的容器吃了吧Top

2 楼ccrun(老妖)(www.ccrun.com)回复于 2006-03-18 11:19:00 得分 50

汗,jiangsheng也灌水?  
   
  unit   Unit1;  
   
  interface  
   
  uses  
      Windows,   Messages,   SysUtils,   Variants,   Classes,   Graphics,   Controls,   Forms,  
      Dialogs,   StdCtrls,   OleCtrls,   SHDocVw,   AppEvnts,   ActiveX;  
   
  type  
      TForm1   =   class(TForm)  
          WebBrowser1:   TWebBrowser;  
          Button1:   TButton;  
          procedure   Button1Click(Sender:   TObject);  
          procedure   FormCreate(Sender:   TObject);  
          procedure   FormDestroy(Sender:   TObject);  
      private  
              FOleInPlaceActiveObject:   IOleInPlaceActiveObject;  
              procedure   MsgHandler(var   Msg:   TMsg;   var   Handled:   Boolean);  
          {   Private   declarations   }  
      public  
          {   Public   declarations   }  
      end;  
   
  var  
      Form1:   TForm1;  
   
  implementation  
   
  {$R   *.dfm}  
  //---------------------------------------------------------------------------  
  procedure   TForm1.Button1Click(Sender:   TObject);  
  begin  
          WebBrowser1.Navigate('www.ccrun.com');  
  end;  
  //---------------------------------------------------------------------------  
  procedure   TForm1.MsgHandler(var   Msg:   TMsg;   var   Handled:   Boolean);  
  var  
          pOleObj:   IOleInPlaceActiveObject;  
          pDisp:   IDispatch;  
  begin  
          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  
                          pDisp   :=   WebBrowser1.Application;  
                          if   pDisp   <>   nil   then  
                          begin  
                                  pDisp.QueryInterface(IOleInPlaceActiveObject,   pOleObj);  
                                  if   pOleObj   <>   nil   then  
                                          FOleInPlaceActiveObject   :=   pOleObj;  
                          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  
                                  //  
                  else  
                          FOleInPlaceActiveObject.TranslateAccelerator(Msg);  
          end;  
  end;  
  //---------------------------------------------------------------------------  
  procedure   TForm1.FormCreate(Sender:   TObject);  
  begin  
          Application.OnMessage   :=   MsgHandler;  
  end;  
  //---------------------------------------------------------------------------  
  procedure   TForm1.FormDestroy(Sender:   TObject);  
  begin  
          FOleInPlaceActiveObject   :=   nil;  
  end;  
   
  end.  
  Top

3 楼comerliang(天地良心)(性欲被自己倒分倒没了,以后再也不敢倒分了,想倒分的兄弟看看我的下场吧,男人没了性欲真不爽)回复于 2006-03-18 13:31:41 得分 10

markTop

4 楼Wit253(阿狼)回复于 2006-03-18 15:50:11 得分 0

ccrun(老妖)(www.ccrun.com)       回帖不看贴,你没试一下还是不能回车  
  <BODY   contentEditable="true">  
  aaa<br/>  
  bbb  
  </BODY>Top

5 楼cuteant(我这张旧床票还能否登上你的破床|涛声是否依旧)回复于 2006-03-18 16:20:43 得分 10

是<br/>吗?是<br>吧Top

6 楼Wit253(阿狼)回复于 2006-03-18 17:19:01 得分 0

<br/>   是   BiuZhun   写法Top

7 楼cuteant(我这张旧床票还能否登上你的破床|涛声是否依旧)回复于 2006-03-18 18:15:09 得分 10

改为<br>就可以了Top

8 楼Wit253(阿狼)回复于 2006-03-18 20:13:18 得分 0

没听明白我意思,我是说在回车没有作用,不是什么BR不BR  
  是<BODY   contentEditable="true">Top

9 楼Wit253(阿狼)回复于 2006-03-19 13:36:02 得分 0

谢谢各位DX  
  问题已经解决了  
  用的是EmbeddedWB里的代码Top

相关问题

  • 请问怎么在twebbrowser中自动提交表单?好像用发消息模拟输入回车键不行。
  • 请教高手:对话框中被子类化的编辑控件为什么不能接受回车键?
  • DataGridTextBoxColumn捕捉不了回车键?!
  • 怎样才能让CEdit控件接受回车键?
  • VB中接受键盘事件(主要就是回车键)
  • 为什么不能按回车键不能跳到下一列
  • 回车键小问题,但分数不会少呀.
  • 请问能不能用cin读入回车键值?
  • 在DW中为什么按回车键后不能换行?
  • 能不能设置button的accesskey为回车键?

关键词

得分解答快速导航

  • 帖主:Wit253
  • jiangsheng
  • ccrun
  • comerliang
  • cuteant
  • cuteant

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo