_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Lun 22 Ago, 2005 5:51 pm Asunto: |
|
|
Hola karl:
A ver si te sirve algo como esto:
https://cppbuilder.es/viewtopic.php?t=10212
Pero para el StringGrid. Tienes que poner a 'true' la propiedad 'ShowHint' del StringGrid y poner el siguiente código en el evento OnMouseMove del mismo:
| Código: | TStringGrid* grid = static_cast<TStringGrid*>(Sender);
static int oldX, oldY;
int col, row;
if (oldX != X || oldY != Y)
{
// Comprobamos que estamos sobre una celda y cual es
grid->MouseToCell(X, Y, col, row);
if (col != -1 && row != -1)
{
TMessage msg;
// Simulamos la salida del cursor del raton del control
msg.Msg = WM_MOUSEMOVE;
msg.LParam = 0;
Application->HintMouseMessage(this, msg);
// Cambiamos el valor de "Hint" segun nos interese
// En este ejemplo usaramos el contenido de la celda
grid->Hint = grid->Cells[col][row];
// Simulamos la entrada del cursor en las coordenadas actuales
msg.Msg = WM_MOUSEMOVE;
msg.LParamLo = X;
msg.LParamHi = Y;
Application->HintMouseMessage(grid, msg);
}
else
grid->Hint = "";
oldX = X;
oldY = Y;
} |
El ejemplo lo que hace es mostrar el contenido de la celda sobre la que nos encontramos. |
|