Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-12-2009
Kandorf Kandorf is offline
Miembro
 
Registrado: may 2007
Posts: 38
Poder: 0
Kandorf Va por buen camino
Desaparece la imagen al usar FillRect

Hola, estoy creando una aplicación en la que muestro una puntuación con 5 imágenes de una estrella, lo que quiero es que al posicionar el ratón de la mitad de la imagen a la izquierda muestre sólo la mitad de la imagen (para puntuar sólo con la mitad de una estrella).

Lo he intentado creando este método:
Código:
// Oculta la mitad de una estrella
procedure TFrmPelicula.OcultarEstrellaMitad(Estrella: TImage);
begin
  Estrella.Picture.Bitmap.Canvas.FillRect(Rect(Estrella.Width div 2,0,Estrella.Width-1,Estrella.Height-1));
end;
Pero lo que pasa es que la estrella desaparece entera.
La imagen que utilizo es un .ico, por si sirve de algo.

Un saludo.
Responder Con Cita
  #2  
Antiguo 28-12-2009
Avatar de defcon1_es
defcon1_es defcon1_es is offline
Miembro
 
Registrado: mar 2004
Ubicación: Cuenca - España
Posts: 524
Poder: 14
defcon1_es Va por buen camino
una sugerencia:
¿Por qué no usas 2 iconos?

Uno para la estrella completa y otro para la media estrella.
Así te olvidas de repintar, y solamente tienes que cambiar un icono por otro...
__________________
Pintor de pantallas...
Responder Con Cita
  #3  
Antiguo 29-12-2009
Kandorf Kandorf is offline
Miembro
 
Registrado: may 2007
Posts: 38
Poder: 0
Kandorf Va por buen camino
Hola, gracias por tu respuesta.
Ya había pensado en usar otra imagen para la mitad de la estrella, la cosa es que me ha dado por permitir dar un toque de personalización al programa y dejar que se cambie el dibujito de la estrella, con lo que crear las imágenes a pares sería una chapucilla, para un solo icono estaría bien.

De todas formas me acabas de dar una idea, reducir el ancho del TImage a la mitad y solucionado xD. Es cutrecillo pero permite lo de personalizar la imagen.

De todas formas me gustaría hacerlo con el DrawCell, pienso que es más profesional, así que acepto sugerencias.

Saludos!

EDIT:
Hum... lo he probado y da problemas porque reconozco si está en la mitad derecha o izquierda de la estrella por el OnMouseMove, pero si lo achico a la mitad, al posicionar el ratón en lo que sería la parte derecha de la estrella (la oculta), en realidad eso ya no es parte de la imagen, entonces ya no me la pinta entera...

Última edición por Kandorf fecha: 29-12-2009 a las 02:20:38.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Puedo usar un TImage para estirar una imagen? Cheerpipe Varios 1 09-09-2008 23:16:09
Usar evento OnClick en imagen creada en ejecucion ilcapo C++ Builder 8 12-04-2007 21:08:51
Design Tab desaparece en ASP.NET edalmasso .NET 0 05-12-2006 20:22:02
usar imagen en builder cocke C++ Builder 2 27-11-2006 01:44:10
Usar la imagen de un formulario Duc API de Windows 2 26-11-2006 18:19:29


La franja horaria es GMT +2. Ahora son las 08:27:22.


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