Visual Basic Foro

Programación => Visual Basic 6 => Mensaje iniciado por: el_trocha en Enero 30, 2011, 10:41:37 am

Título: Centrar texto en un Label
Publicado por: el_trocha en Enero 30, 2011, 10:41:37 am
Hola amigos.

La pregunta es:

¿De que modo se puede centrar el texto de un label para que quede justo en le centro tanto Horizontal como verticalmente.?

Horizontalmente es facil usando la propiedad de Alignment, pero y como se puede centrar Verticalmente........

Bueno un saludo.

Gracias a todos.
Título: Re:Centrar texto en un Label
Publicado por: LeandroA en Enero 30, 2011, 11:57:05 am
hola los labels no tienen la propiedad de centrar texto verticalmente, hay otras alternativas

una es centrarlo dentro de un picturebox

Código: [Seleccionar]
Private Sub Form_Load()
    With Label1
        .AutoSize = True
        .Alignment = vbCenter
        .Caption = "un chanchito se comio un zapallo" & vbCrLf & "el boludo se atraganto"
        .Move (Picture1.ScaleWidth / 2) - (.Width / 2), (Picture1.ScaleHeight / 2) - (.Height / 2)
    End With
End Sub

otra podes utilizar las apis de windows y pintar un texto dentro del picturebox

(si es no multilinea)
Código: [Seleccionar]
Option Explicit
Private Declare Function DrawText Lib "user32.dll" Alias "DrawTextA" (ByVal hdc As Long, ByVal lpStr As String, ByVal nCount As Long, ByRef lpRect As RECT, ByVal wFormat As Long) As Long

Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type

Private Const DT_CENTER As Long = &H1
Private Const DT_VCENTER As Long = &H4
Private Const DT_MULTILINE As Long = (&H1)
Private Const DT_SINGLELINE As Long = &H20
Private Const DT_CALCRECT As Long = &H400

Private Sub Form_Load()
    Dim Rec As RECT
    With Picture1
        .AutoRedraw = True
        Rec.Right = .ScaleWidth / Screen.TwipsPerPixelX
        Rec.Bottom = .ScaleHeight / Screen.TwipsPerPixelY
        DrawText .hdc, "un chanchito se comio un zapallo", -1, Rec, DT_CENTER Or DT_VCENTER Or DT_SINGLELINE
        .Refresh
    End With
End Sub

Título: Re:Centrar texto en un Label
Publicado por: el_trocha en Enero 30, 2011, 01:10:47 pm
Como sabes......

Que barbaridad.................

Bueno la verdad es que mas o menos tenia idea de como poder resolverlo, pero como siempre otra vez, me abriste los ojos....

Muchas Gracias.

Un saludo.