Buenas, me gustaría saber si es posible girar un label o al menos ponerlo en vertical, en visual basic 6.
No encuentro nada al respecto.
Un saludo y gracias.
| |||
Girar label (poner en vertical) Buenas, me gustaría saber si es posible girar un label o al menos ponerlo en vertical, en visual basic 6. No encuentro nada al respecto. Un saludo y gracias. |
| |||
Re: Girar label (poner en vertical) Lamento informarte que no se puede colocar un label en forma vertical tienes que dibujarlo por medio de apis. en vbaccelerator se encuentra una clase para crear un banner vertical, hecha una ojeada a ver si le entiendes al codigo ^^ w w w . vbaccelerator . com/home/VB/Code/Libraries/Graphics_and_GDI/Text_At_Any_Angle/article.asp |
| |||
Re: Girar label (poner en vertical) gracias, encontre también un método en la propia mdsn de microsoft. lo dejo aqui por si a alguien le sirve. A mi me ha servido.
Código:
El método dibuja en un picturebox el texto. no es un label pero funciona. Private Declare Function CreateFontIndirect Lib "gdi32" Alias _ "CreateFontIndirectA" (lpLogFont As LOGFONT) As Long Private Declare Function SelectObject Lib "gdi32" (ByVal hdc _ As Long, ByVal hObject As Long) As Long Private Declare Function DeleteObject Lib "gdi32" (ByVal _ hObject As Long) As Long Private Const LF_FACESIZE = 32 Private Type LOGFONT lfHeight As Long lfWidth As Long lfEscapement As Long lfOrientation As Long lfWeight As Long lfItalic As Byte lfUnderline As Byte lfStrikeOut As Byte lfCharSet As Byte lfOutPrecision As Byte lfClipPrecision As Byte lfQuality As Byte lfPitchAndFamily As Byte lfFaceName as String * LF_FACESIZE End Type Sub Command1_Click() Dim font As LOGFONT Dim prevFont As Long, hFont As Long, ret As Long Const FONTSIZE = 10 ' Desired point size of font font.lfEscapement = 1800 ' 180-degree rotation font.lfFaceName = "Arial" & Chr$(0) 'Null character at end ' Windows expects the font size to be in pixels and to ' be negative if you are specifying the character height ' you want. font.lfHeight = (FONTSIZE * -20) / Screen.TwipsPerPixelY hFont = CreateFontIndirect(font) prevFont = SelectObject(Picture1.hdc, hFont) Picture1.CurrentX = Picture1.ScaleWidth Picture1.CurrentY = Picture1.ScaleHeight / 2 Picture1.Print "Rotated Text" ' Clean up by restoring original font. ret = SelectObject(Picture1.hdc, prevFont) ret = DeleteObject(hFont) Picture1.CurrentY = Picture1.ScaleHeight / 2 Picture1.Print "Normal Text" End Sub |
| ||||
Re: Girar label (poner en vertical) Hola,si se puede y lo mas facil es hacerte vos mismo un control ocx que lo haga,por ejemplo como este: http://www.planet-source-code.com/vb...p%2FL431613121 saludos.
__________________ " Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein |