Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   Seleccionar los bordes (https://www.clubdelphi.com/foros/showthread.php?t=1380)

Giasl 12-06-2003 12:42:00

Seleccionar los bordes
 
En una aplicacion que estoy desarollando necesitaria que apeciera un selector de bordes como lo hacen por ejemplo la excel o el FontPage. Es decir que apareciera como una especie de celda en la que puedes seleccionar el borde derecho o el izquierdo el de arriba o el de abajo o todos a la vez, etc...

Gracias 1000

andres1569 13-06-2003 21:47:25

Aquí va una idea, aunque no la he probado:

Colocas sobre un Panel varios controles TShape y los redimensionas para que tengan, por ejemplo, los bordes de arriba/abajo un Height de 3, y los de izquierda/derecha un Width de 3. Cuando el usuario de tu aplicación pulsa sobre uno de ellos (capturas el evento OnMouseDown de cada uno de ellos), cambias el color del mismo (hay color de relleno, "Brush" y de Borde, "Pen") cambiando por ejemplo entre un color negro y el color del Panel (de esta forma parecerá que ha desaparecido):

Código:

procedure TForm1Shape1OnMouseDown (Sender: TObject ...);
begin
  with TShape(Sender) do
    if Brush.Color = clWhite then
    begin
      Brush.Color := clBtnFace;  // aquí el color del Panel
      Pen.Color := clBtnFace;  // aquí el color del Panel
    end
    else begin
      Brush.Color := clBlack; 
      Pen.Color := clBlack; 
    end;
end;


Giasl 16-06-2003 16:42:23

Me pillaste la idea.

Si después de enviar la consulta al foro me di cuenta que poniendo 4 controles manuales como bien comentas solcuiono el problema. Como además tengo que utilizar este codigo en varios forms de la aplicación, estoy pensando en crear un componente.
Lo que sucede es que, como los usuarios estan acostumbrados a lo que ya cononcen, y además si ya está hecho por que hacerlo de nuevo. ¿ Me preguntaba si existina un componente silimar a los que trae office 2000 o XP para la selección de bordes ?

De todoas formas gracias por el interés, tu sugerencia es muy buena...


QTH. 73s


La franja horaria es GMT +2. Ahora son las 16:43:34.

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