diff --git a/lcl/include/buttons.inc b/lcl/include/buttons.inc index e8b3ddecd4..3d2ea0acc5 100644 --- a/lcl/include/buttons.inc +++ b/lcl/include/buttons.inc @@ -50,7 +50,7 @@ begin inherited CreateWnd; //this is done in TWinControl //SetText(Caption);//To ensure shortcut is set - WSSetDefault; + UpdateDefaultCancel; end; procedure TCustomButton.ControlKeyDown(var Key: Word; Shift: TShiftState); @@ -290,11 +290,16 @@ begin end; procedure TCustomButton.Loaded; -var - Form: TCustomForm; begin inherited Loaded; + UpdateDefaultCancel; +end; + +procedure TCustomButton.UpdateDefaultCancel; +var + Form: TCustomForm; +begin Form := GetParentForm(Self); if Form <> nil then begin diff --git a/lcl/stdctrls.pp b/lcl/stdctrls.pp index de3aa147b7..aef4427e3c 100644 --- a/lcl/stdctrls.pp +++ b/lcl/stdctrls.pp @@ -1087,6 +1087,7 @@ type procedure WSSetText(const AText: String); override; procedure TextChanged; override; procedure Loaded; override; + procedure UpdateDefaultCancel; public constructor Create(TheOwner: TComponent); override; procedure ExecuteDefaultAction; override;