Igualar Longitud De Texto Por Alguna Forma O Formato


Goto page 1, 2  Next

Subject: 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.

Last edited by gambafeliz on Sunday, 25 August 2019, 14:05; edited 2 times in total
Profile PM  
Subject: 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

Last edited by shordi on Sunday, 25 August 2019, 12:18; edited 2 times in total
Profile PM  
Subject: 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)

Last edited by cogier on Sunday, 25 August 2019, 12:22; edited 1 time in total
Profile PM  
Subject: 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?


Profile PM  
Subject: 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 !!!

Profile PM  
Subject: 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.

Last edited by gambafeliz on Sunday, 25 August 2019, 13:46; edited 1 time in total
Profile PM  
Subject: 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

Profile PM  
Subject: 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

Profile PM  
Subject: 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

Profile PM  
Subject: 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

Profile PM  
Goto page 1, 2  Next

Page 1 of 2


  
You cannot post new topics
You cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events

   

This is a "Lo-Fi" version of our main content. To view the full version with more information, formatting and images, please click here.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Generation Time: 0.122s (PHP: -23% SQL: 123%)
SQL queries: 27 - Debug Off - GZIP Enabled