Pergunta : o rato estala sobre a imagem de TcxPageControl (a imagem da aba)

Olá! lá, o

i am que olha para encontrar (em um onmousedown) uma verificação para considerar se o ponteiro de rato está sobre a imagem da aba de um pagecontrol

The TcxPageControl é um código do component
Component dos devexpress:
var
  pcSUMDatabases: TcxPageControl;
cxTabSheet1: TcxTabSheet;

  pcSUMDatabases := TcxPageControl.Create (Self);
cxTabSheet1: = TcxTabSheet.Create (auto);
com nome do begin
do do
dos pcSUMDatabases: = “pcSUMDatabases”; Pai do
: = tsSUM; O
saiu: = 0; Parte superior do
: = 105; Largura do
: = 971; Altura do
: = 431;
ActivePage: = cxTabSheet1; O
alinha: = alClient;
ImageBorder: = 2; Imagens do
: = ilTabs; Opções do
: = [o pcoAlwaysShowGoDialogButton, pcoGoDialog, pcoGradient, pcoGradientClientArea, pcoRedrawOnResize]; Estilo do
: = 9;
TabOrder: = 1;
OnMouseDown: = pcSUMDatabasesMouseDown; extremidade do
;
com cxTabSheet1 nome do begin
do do
: = “cxTabSheet1”; Pai do
: = pcSUMDatabases; Subtítulo do
: = “cxTabSheet1”;
ImageIndex: = 0; extremidade do
; pcSUMDatabases do
object do

(código da pasta do dfm): TcxPageControl
deixado = parte superior de 0
= largura de 105
= altura de 971
= 431
ActivePage = cxTabSheet1
alinha = o alClient
ImageBorder = as imagens de 2
= o ilTabs
LookAndFeel.Kind = opções do lfStandard
= [o pcoAlwaysShowGoDialogButton, pcoGoDialog, pcoGradient, pcoGradientClientArea, pcoRedrawOnResize] estilo do
= 9
TabOrder = 1
TabSlants.Positions = [spLeft, spRight] o
OnMouseDown = pcSUMDatabasesMouseDown
ExplicitLeft = objeto cxTabSheet1 de 96
ExplicitTop = de 224
ExplicitWidth = de 289
ExplicitHeight = de 193
ClientRectBottom = de 431
ClientRectRight = de 971
ClientRectTop = de 26
: O subtítulo de TcxTabSheet
= 'o Br/> ImageIndex de cxTabSheet1'< = os ilTabs do end
end


The de 0
contem imagens das limas comuns (dir das teclas) que 16x16

I apenas não pode parecer encontrar como encontrar a posição da imagem no tab.

Anybody uma solução de idéias? o

i adicionará um screenshot para explicar que área eu estou procurando exatamente
class= do

Resposta : o rato estala sobre a imagem de TcxPageControl (a imagem da aba)

começ o:

nas profundidades escondidas dos pintores protegidos:

tipo
  TmagiccxPCStandardPainter = extremidade da classe (TcxPCStandardPainter);

procedimento TfrmSumGraphs.pcSUMDatabasesMouseDown (remetente: TObject;
  Tecla: TMouseButton; Deslocamento: TShiftState; X, Y: Inteiro);
var
  n: Inteiro;
  aba: tcxTabSheet;
  R: TRect;
  pinta: TPoint;
começar
  n: = pcSUMDatabases.IndexOfTabAt (X, Y);
  se (n <> -1) então
  começar
    aba: = pcSUMDatabases.Pages [n];
    TmagiccxPCStandardPainter (pcSUMDatabases.Painter) .StandardPainterPrepareOutTabImageAndTextData (tab.TabIndex);
    R: = TmagiccxPCStandardPainter (pcSUMDatabases.Painter) .FOutTabImageAndTextData.TabImageRect;
    se PtInRect (R, ponto (X, Y)) então ShowMessage (“ele '' s na imagem!!!! ");
  extremidade;
extremidade;
Outras soluções  
 
programming4us programming4us