Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-06-2022
juggern juggern is offline
Miembro
 
Registrado: jun 2020
Posts: 79
Poder: 4
juggern Va por buen camino
Hint que no desaparezca

Hola chicos,

Tengo una dudilla que seguro que es una chorrada y es una opción sin más pero no la encuentro, se me está escapando.
Tengo un botón y le pongo un Hint, todo bien, pero lo que quiero es que al mostrar el hint, no desaparezca, que se quede ahí mostrado hasta que se mueva el ratón como funciona en casi todos los sitios.
Ahora lo que hace es que se muestra durante un ratillo y luego se quita.

Se puede hacer?

Gracias!!

Un saludo
Responder Con Cita
  #2  
Antiguo 24-06-2022
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Puedes crearte tu propio hint, ejemplo.
Responder Con Cita
  #3  
Antiguo 25-06-2022
elrayo76 elrayo76 is offline
Miembro
 
Registrado: ene 2004
Ubicación: En la tierra, por eso mis archivos en la tierra y no en la nuebe...
Posts: 290
Poder: 21
elrayo76 Va por buen camino
Buenas, te paso estas dos funciones que yo tengo creadas a ver si te sirven.


Código Delphi [-]
function ShowHint(aText: String): THintWindow;
var
  objHintPos: TPoint;
  objHintBox: TRect;
  strShortHint: String;
  arrShortHint: array[0..255] of Char;

begin
  Result := THintWindow.Create(nil);

  strShortHint := GetShortHint(aText);
  objHintPos := Mouse.CursorPos;  // Obtiene la posición del puntero.

  Inc(objHintPos.Y, 6);
  objHintBox := Bounds(0, 0, Screen.Width, 0);
  DrawText(Result.Canvas.Handle, StrPCopy(arrShortHint, strShortHint), -1, objHintBox,
    DT_CALCRECT or DT_LEFT or DT_WORDBREAK or DT_NOPREFIX);

  OffsetRect(objHintBox, objHintPos.X, objHintPos.Y);
  Inc(objHintBox.Right, 6);
  Inc(objHintBox.Bottom, 2);

  Result.ActivateHint(objHintBox, strShortHint);
end;

procedure RemoveHint(var aHint: THintWindow);
begin
  if Assigned(aHint) then
  begin
    aHint.ReleaseHandle;
    FreeAndNil(aHint);
  end;
end;


Ahora lo que tienes que hacer es poner ShowHint cuando en mouse pasa por encima del botón y cuando se va de ahí arriba usar otro evento y llamara RemoveHint



Si esto lo quieren en todos los botones lo que te aconsejo es que te crees un componente donde nuevo con el botón donde tenga esta funcionalidad. De esta forma solo tienes que pasarle el texto y te desentiendes de lo que pasa con el Hint



Saludos,
El Rayo
__________________
Si tienes una función o procedimiento con diez parámetros, probablemente hayas olvidado uno
Responder Con Cita
  #4  
Antiguo 25-06-2022
manelb manelb is offline
Miembro
 
Registrado: mar 2017
Posts: 280
Poder: 8
manelb Va por buen camino
Podrías simplemente asignar un valor considerablemente elevado a la propiedad Application.HintHidePause al arrancar la aplicación.

Saludos a todos...
Responder Con Cita
  #5  
Antiguo 26-06-2022
juggern juggern is offline
Miembro
 
Registrado: jun 2020
Posts: 79
Poder: 4
juggern Va por buen camino
Hola chicos,

Ahora no estoy delante del pc pero suena a que justo es la propiedad que comenta manelb.
Mañana pruebo.

Un saludo
Responder Con Cita
  #6  
Antiguo 27-06-2022
juggern juggern is offline
Miembro
 
Registrado: jun 2020
Posts: 79
Poder: 4
juggern Va por buen camino
Buenos días chicos,

Ya probé lo que decía manelb y es justo lo que buscaba, esa era la propiedad que no encontraba.

Muchas gracias!!

Un saludo
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Hint de una celda lbidi Varios 3 16-04-2012 21:09:01
Formulario activo siempre, y formulacio inicio que desaparezca tras 5 o 6 segundos Petolansa Varios 3 14-12-2007 02:50:25
Hint en un TStatusPanel ixMike OOP 4 11-05-2007 19:23:37
Hint /*+ Append*/ AngelMarvin Oracle 0 04-04-2006 16:45:26
Evento Hint lotos8ar Varios 6 07-10-2005 17:23:55


La franja horaria es GMT +2. Ahora son las 17:42:05.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi