PDA

Ver la Versión Completa : Texto en Vertical


Giniromero
11-03-2005, 10:30:03
Hola,

Trabajo con delphi 6 y estoy ampliando mi aplicación.

Por motivos de diseño, necesito tener en la parte izquierda de un Tpanel, dos botones, o paneles o lo que sea, que puedan seleccionar los usuarios, dependiendo de lo que seleccionen vayan a un lado u otro de mi aplicación, (por ese tema no hay problema, lo tengo implementado), el tema es que necesito que ese objeto X, tenga texto en vertical, no en horizontal.

He problado con un TPanel que contiene un TEdit con la propiedad WordWrap como True, pero entonces el texto me ocupa mas espacio del que necesito, por que las letras aparecen en horizontal, no en vertical, todas juntas, y claro, necesitan más espacio.

Tambien he probado con un TPageControl con el tabPosition a la izquierda y cuyo tamaño lo he redicido al de las pestañas, puesto a la izq del TPanel en el que se visualiza todo. Pero como no necesito dos pestañas, esto me parece una solucion algo cutre.

¿Hay alguna otra manera de solucionar esto?

Muchas Gracias por todo,

Virginia

Lepe
11-03-2005, 10:48:57
En www.Torry.net seguro que encuentras un Label que se puedea girar los grados que quieras.

Saludos

Neftali [Germán.Estévez]
11-03-2005, 15:40:03
Hay varias opciones, además de la comentada de utilizar algun componente.
Hace un par de días, en éste mismo foro apareció un mensaje referente a la rotación de texto, exactamente éste:
http://www.clubdelphi.com/foros/showthread.php?t=19332

Otra opción, que no se si te sirve, es utilizar un PageControl; Puedes configurar la propiedad TabPosition a tpLeft, con ésto obtendrás los TABs a la izquierda con el texto en Vertical.

Giniromero
15-03-2005, 10:19:16
Muchas gracias por la ayuda, miraré los link que me comentais, (aunque ya he mirado el de Torry.net y no me ha servido de mucho).

En cuanto a lo que me comenta neftali de usar PanelControl, con el TabPosition como left, ya lo tenía contemplado como una opción, pero, como dije al respecto en mi primer mensaje, teniendo en cuenta que no voy a usar pestañas en mi aplicación, me parece una solución algo cutre, por que en la implementación tuve que minimizar el controlPanel al tamaño de las pestañas.

Muchas gracias de todos modos por la ayuda,

saludos,

Virginia

Lepe
15-03-2005, 17:32:30
las suits LMDTOOLS, JVCL llevan el label que quieres.

Las JVCL (jvcl.sourceforge.net/) son más de 400 componentes para delphi
Las LMDTOOLS (www.lmdinnovative.com/ ) son 5 o 6 pestañas de la paleta de componentes.(hay una version free en la web esa)

Saludos

Alfredo
15-03-2005, 20:09:50
Hola, virginia...

Prueba este codigo: (es de trucomania Nº 117)
procedure TForm1.Button1Click(Sender: TObject);
var
Hfont: Thandle;
logfont:TLogFont;
font: Thandle;
count: integer;
begin
LogFont.lfheight:=30;
logfont.lfwidth:=10;
logfont.lfweight:=900;
{Angulo * 10}
LogFont.lfEscapement:=-450;
logfont.lfcharset:=1;
logfont.lfoutprecision:=out_tt_precis;
logfont.lfquality:=draft_quality;
logfont.lfpitchandfamily:=FF_Modern;

font:=createfontindirect(logfont);

Selectobject(Form1.canvas.handle,font);

SetTextColor(Form1.canvas.handle,rgb(0,0,200));
SetBKmode(Form1.canvas.handle,transparent);

for count:=1 to 100 do
begin
canvas.textout(Random(form1.width),Random(form1.height),'Rotated');
SetTextColor(form1.canvas.handle,rgb(Random(255),Random(255),Random(255)));
end;
deleteobject(font);

end;


Con unos pocos arreglos pudiera ser de ayuda.... ;)

Giniromero
12-04-2005, 13:58:08
Hola a Todos,

Al final lo resolví poniendo botones y en los botones,imagenes con el texto en vertical.

Muchas gracias a todos por todo en cualquier caso.

Virginia