我要写一个delphi 按回车就能跳转到url的Tedit的控件,具体代码怎么写?

[Error]MyEdit.pas(14):Declarationof'KeyPress'differsfrompreviousdeclarationtypeTMyEdi... [Error] MyEdit.pas(14): Declaration of 'KeyPress' differs from previous declaration

type
TMyEdit = class(TEdit)
private
FUrl : AnsiString;
{ Private declarations }
protected
procedure KeyPress;override; //第14行
{ Protected declarations }
public
constructor create(Aowner : TComponent);override;
{ Public declarations }
published
property Url: AnsiString read Furl write Furl;
{ Published declarations }
end;
展开
 我来答
hks554488
推荐于2016-03-15 · TA获得超过395个赞
知道小有建树答主
回答量:593
采纳率:0%
帮助的人:449万
展开全部

procedure KeyPress;override;

这个override说明你希望继承父类或祖先类的方法,但是父类或者祖先类的KeyPresss方法的参数不是这样的,所以报错了。


继承这个方法是正确的做法,这样可以实现你的需求。你在代码中判断当按下回车键时自动跳转到指定URL即可。


protected
  procedure KeyPress(var Key: Char); override;
......
procedure TMyEdit.KeyPress(var Key: Char);
begin
  inherited;
  if Key = #13 then
  begin
    Key := #0;
    // OpenUrl(Furl);
  end;
end;
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式