@@ -317,6 +317,7 @@ TEsImageControl = class(TEsBaseLayout)
317
317
procedure SetTransparentGraphic (const Value : Boolean);
318
318
procedure WMKillFocus (var Message: TWMKillFocus); message WM_KILLFOCUS;
319
319
procedure WMSetFocus (var Message: TWMSetFocus); message WM_SETFOCUS;
320
+ procedure CNKeydown (var Message: TWMKeyDown); message CN_KEYDOWN;
320
321
{ $IFDEF VER340UP}
321
322
function GetImageName : TImageName;
322
323
function IsImageNameStored : Boolean;
@@ -326,7 +327,6 @@ TEsImageControl = class(TEsBaseLayout)
326
327
function CanAutoSize (var NewWidth, NewHeight: Integer): Boolean; override;
327
328
procedure CalcContentMargins (var Margins: TContentMargins); override;
328
329
procedure ImageProxyChange (Sender: TObject);
329
- procedure KeyUp (var Key: Word; Shift: TShiftState); override;
330
330
procedure MouseDown (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
331
331
procedure Loaded ; override;
332
332
procedure Paint ; override;
@@ -586,11 +586,11 @@ TEsCustomVirtualImageControl = class(TEsBaseLayout)
586
586
procedure SetFrameWidth (const Value : TFrameWidth);
587
587
procedure WMKillFocus (var Message: TWMKillFocus); message WM_KILLFOCUS;
588
588
procedure WMSetFocus (var Message: TWMSetFocus); message WM_SETFOCUS;
589
+ procedure CNKeydown (var Message: TWMKeyDown); message CN_KEYDOWN;
589
590
protected
590
591
procedure CalcContentMargins (var Margins: TContentMargins); override;
591
592
procedure ChangeScale (M, D: Integer; isDpiChange: Boolean); override;
592
593
procedure ImageProxyChange (Sender: TObject);
593
- procedure KeyUp (var Key: Word; Shift: TShiftState); override;
594
594
procedure MouseDown (Button: TMouseButton; Shift: TShiftState; X, Y: Integer); override;
595
595
procedure Paint ; override;
596
596
public
@@ -1511,6 +1511,8 @@ function TEsImageControl.CanFocus: Boolean;
1511
1511
Result := AllowFocus and Inherited ;
1512
1512
end ;
1513
1513
1514
+
1515
+
1514
1516
function TEsImageControl.GetOpacity : Byte;
1515
1517
begin
1516
1518
Result := ImageProxy.Opacity;
@@ -1609,10 +1611,11 @@ function TEsImageControl.IsImageNameStored: Boolean;
1609
1611
end ;
1610
1612
{ $ENDIF}
1611
1613
1612
- procedure TEsImageControl.KeyUp (var Key: Word; Shift: TShiftState );
1614
+ procedure TEsImageControl.CNKeydown (var Message: TWMKeyDown );
1613
1615
begin
1614
1616
inherited ;
1615
- if (Key = VK_SPACE) { or (Key = VK_RETURN)} then
1617
+
1618
+ if (Message.CharCode = VK_SPACE) or (Message.CharCode = VK_RETURN) then
1616
1619
Click;
1617
1620
end ;
1618
1621
@@ -1666,7 +1669,7 @@ procedure TEsImageControl.Paint;
1666
1669
else
1667
1670
DrawFrame(inherited Canvas, nil , ClientRect, FrameStyle, FrameWidth, FrameColor, clBtnHighlight, clBtnShadow);
1668
1671
1669
- if Focused then
1672
+ if IsShowFocusRect(Self) then
1670
1673
begin
1671
1674
(inherited Canvas).Brush.Color := TColor($FF000000);
1672
1675
(inherited Canvas).DrawFocusRect(ContentRect);
@@ -2388,10 +2391,11 @@ function TEsCustomVirtualImageControl.IsImageNameStored: Boolean;
2388
2391
Result := ImageProxy.ImageName <> ' ' ;
2389
2392
end ;
2390
2393
2391
- procedure TEsCustomVirtualImageControl.KeyUp (var Key: Word; Shift: TShiftState );
2394
+ procedure TEsCustomVirtualImageControl.CNKeydown (var Message: TWMKeyDown );
2392
2395
begin
2393
2396
inherited ;
2394
- if (Key = VK_SPACE) { or (Key = VK_RETURN)} then
2397
+
2398
+ if (Message.CharCode = VK_SPACE) or (Message.CharCode = VK_RETURN) then
2395
2399
Click;
2396
2400
end ;
2397
2401
@@ -2432,7 +2436,7 @@ procedure TEsCustomVirtualImageControl.Paint;
2432
2436
DrawDesignStretchHint(Canvas, ClientRect, ImageProxy);
2433
2437
end ;
2434
2438
2435
- if Focused then
2439
+ if IsShowFocusRect(Self) then
2436
2440
begin
2437
2441
Canvas.Brush.Color := TColor($FF000000);
2438
2442
Canvas.DrawFocusRect(ContentRect);
0 commit comments