Igualar Longitud De Texto Por Alguna Forma O Formato


Ir a la página 1, 2  Siguiente

Objetivo: Igualar Longitud De Texto Por Alguna Forma O Formato
Tengo esto:

If gResultado["Importe"] < 0 Then
devoluciones += gResultado["Importe"]
Else
gastos += gResultado["Importe"]
Endif

Esto lo que hace es discriminar si es un reembolso de dinero o es un gasto. Y después creo un label para presentarlo así:

Label1.Text = "Nº de movimientos/mes es: " & gResultado.Count & "\n" & Format(gastos, "-#,##0.00 €") & " :Gastado" & "\n" & Format(devoluciones, "-#,##0.00 €") & " :Reembolsado"

esto me visualiza en el formulario algo como esto:

Nº de movimientos/mes es: 39
993,78 € :Gastado
0,00 € :Reembolsado

Yo lo que busco es algo como (basicamente deseo alinear los textos que acompañan a los importes justamente por los ":") :

Nº de movimientos/mes es: 39
993,78 € :Gastado
0,00 € :Reembolsado

ó

Nº de movimientos/mes es: 39
Gastado: 993,78 €
Reembolsado: 0,00 €

Nota: en el post es posible que no estén en línea yo quiero que los dos puntos estén en línea, ¿me comprenden?. Otro problema es que Reembolso viene en negativo y deseo que no tengo el signo negativo pero no me hace caso.

Pero a lo mejor con un label no es el camino, por favor, ¿me ayuda?

Gracias.

última edición por gambafeliz el Domingo, 25 Agosto 2019, 14:05; editado 2 veces
Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato

anchodeseado=30
cadenaconlapasta=" 30,86€"
cadena = "Literal que quiero:"
string(anchodeseado - len(cadena)) & cadena & cadenaconlapasta

última edición por shordi el Domingo, 25 Agosto 2019, 12:18; editado 2 veces
Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
Citar:
Otro problema es que Reembolso viene en negativo y deseo que no tengo el signo negativo pero no me hace caso.


¿Esto ayuda?

Dim i As Integer = -21

Print Abs(i)

última edición por cogier el Domingo, 25 Agosto 2019, 12:22; editado 1 vez
Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
shordi escribió: [Ver mensaje]

anchodeseado=30
cadenaconlapasta=" 30,86€"
cadena = "Literal que quiero:"
string(anchodeseado - len(cadena)) & cadena & cadenaconlapasta


Gracias, shordi, pero, ¿puede ser que no este algo bien?, por ejemplo String(Lenght As Integer, Pattern As String) As String

¿solo pregunto es que no me va o no se aplicarlo?


Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
cogier escribió: [Ver mensaje]
Citar:
Otro problema es que Reembolso viene en negativo y deseo que no tengo el signo negativo pero no me hace caso.


¿Esto ayuda?

Dim i As Integer = -21

Print Abs(i)


Muchas Gracias, cogier esto sí me ha funcionado como yo quería

Perfect !!!

Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
Hola a todos

Me parece que esta pregunta es inviable creo que simplemente voy alinear a la derecha el contenido de Text del Label y voy a pasar o incluso enviar a varios Label.

Creo que esto es una locura intentarlo.

Si quieren dejarlo por mi bien. Si existe algún valiente que quiera romperse la cabeza pues adelante aquí esta el hilo y le escucharé atentamente.

Saludos.

última edición por gambafeliz el Domingo, 25 Agosto 2019, 13:46; editado 1 vez
Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
Creo que entiendo lo que estás buscando. La traducción no fue muy buena. Creo que una'GridView' puede ser la respuesta. Pruebe este código en un nuevo proyecto.

Public Sub Form_Open()
Dim GridView1 As GridView

System.Language = "es_ES.UTF-8"
'System.Language = "en_GB.UTF-8"

With Me
.Height = 80
.Width = 250
.Padding = 5
.Arrangement = Arrange.Vertical
End With

With GridView1 = New GridView(Me)
.Padding = 2
.Expand = True
.Rows.Count = 2
.Columns.Count = 2
.Font.Size = 12
.Font.Bold = True
End With

GridView1[0, 0].Text = " Gastado:"
GridView1[0, 0].Alignment = Align.Right

GridView1[1, 0].Text = " Reembolsado:"
GridView1[1, 0].Alignment = Align.Right

GridView1[0, 1].Text = Format("993.78", "-#,##0.00 €")
GridView1[0, 1].Alignment = Align.Right

GridView1[1, 1].Text = Format("0.00", "-#,##0.00 €")
GridView1[1, 1].Alignment = Align.Right

GridView1.Columns.Width = -1

End


rightalign

Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
cogier escribió: [Ver mensaje]


rightalign


No te voy a engañar. Es mucho mas de lo que buscaba. Y es mucho mas que perfecto, comparado a lo que yo quería aspirar.

Por eso, yo en este caso lo quería hacer muy simple y opté por hacerlo con un Label1. Lo que tu me has hecho es mucho mas profesional. Si consigo poner transparente el GridView o de igual color que el fondo del form.

Gracias por tu esfuerzo. Estoy muy agradecido.

Saludos

Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
gambafeliz escribió: [Ver mensaje]

Gracias, shordi, pero, ¿puede ser que no este algo bien?, por ejemplo String(Lenght As Integer, Pattern As String) As String

¿solo pregunto es que no me va o no se aplicarlo?


No, es que se me había olvidado el segundo parámetro al teclear
anchodeseado=30
cadenaconlapasta=" 30,86€"
cadena = "Literal que quiero:"
string(anchodeseado - len(cadena)," ") & cadena & cadenaconlapasta

Perfil MP  
Objetivo: Re: Igualar Longitud De Texto Por Alguna Forma O Formato
shordi escribió: [Ver mensaje]
gambafeliz escribió: [Ver mensaje]

Gracias, shordi, pero, ¿puede ser que no este algo bien?, por ejemplo String(Lenght As Integer, Pattern As String) As String

¿solo pregunto es que no me va o no se aplicarlo?


No, es que se me había olvidado el segundo parámetro al teclear
anchodeseado=30
cadenaconlapasta=" 30,86€"
cadena = "Literal que quiero:"
string(anchodeseado - len(cadena)," ") & cadena & cadenaconlapasta


Yo he hecho esto basado en tus indicaciones:

Dim anchodeseado As Integer = 30
Dim cadenaconlapasta As String = " 30,86€"
Dim cadenaconlapasta1 As String = " 130,86€"
Dim cadenar As String = "Literal que quiero:"
Dim cadenar1 As String = "Literal quiero:"
Label1.text = String(anchodeseado - Len(cadenar), " ") & cadenar & cadenaconlapasta & "\n" & String(anchodeseado - Len(cadenar1), " ") & cadenar1 & cadenaconlapasta1

Lo siento, agradezco tu ayuda, pero no funciona como espero.

Pero shordi ya lo he resuelto de forma airosa, no es la leche de alineación perfecta como "cogier" que ha hecho mas incluso de lo que yo quería. Pero es válido. Al final si sigo avanzando en mi programa, voy hacer un proyecto, gracias a vuestra ayuda muy muy interesante para todos. Y si lo hago, prometo regalarlo a quien le interese.

Nota: El proyecto es mucho mas de lo que te mandé, pero tu has visto su inicio mas simple.

Gracias, cogier y shordi, ok

Perfil MP  
Ir a la página 1, 2  Siguiente

Página 1 de 2


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.4994s (PHP: -75% SQL: 175%)
Consultas SQL: 48 - Debug off - GZIP Activado