Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/08/2007, 14:20
Manu_Leon
 
Fecha de Ingreso: marzo-2005
Ubicación: Sevilla
Mensajes: 277
Antigüedad: 19 años, 2 meses
Puntos: 2
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:
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
El método dibuja en un picturebox el texto. no es un label pero funciona.