Autor
|
Tema: Mostrar texto en columna? (Leído 2,213 veces)
|
LeandroA
|
buenas tengo una duda que hace tiempo me viene acosando Como puedo mostrar texto en columna dentro de un textbox, muestro un ejemplo Dim sResult As String
Private Sub Form_Load() Me.AutoRedraw = True
AddData "Rosario", "2.80", "Estacional" AddData "Santa Fe", "3.13", "Crece" AddData "Corrientes", "4.22", "Baja" AddData "Formosa", "4.44", "Crece" AddData "Posadas", "5.30", "Baja" AddData "Iguazú", "13.50", "Crece" AddData "Andresito", "0.82", "Baja" AddData "Villa Constitución", "2.35", "Crece" Debug.Print sResult Me.Print sResult End Sub
Private Sub AddData(D1 As String, D2 As String, D3 As String) sResult = sResult & Tabular(D1, 25) & Tabular(D2, 6, True) & Space(10) & Tabular(D3, 10) & vbCrLf End Sub
'Private Sub AddData(D1 As String, D2 As String, D3 As String) ' sResult = sResult & D1 & vbTab & vbTab & D2 & vbTab & D3 & vbCrLf 'End Sub
Private Function Tabular(Palabra As String, Espacio As Long, Optional AlignRight As Boolean) As String If AlignRight Then Tabular = Space(Espacio - Len(Palabra)) & Palabra Else Tabular = Palabra & Space(Espacio - Len(Palabra)) End If End Function
bien si prueban el ejemplo veran que en la ventana de inmediato se muestra correctamente pero al mostrar estos datos en un textbox o con la funcion me.print se desalinean. si uso la segunda funcion AddData (La que esta comentada) pues bien surge un problema con respecto al ultimo items (Villa Constitución) ya que este es mas largo que los superiores o en el primer items que al ser muy corto la tabulacion no se nota, entonces como se cuando deberia aplicar un doble o triple tab o ninguno? Saludos
|
|
|
En línea
|
|
|
|
APOKLIPTICO
Desconectado
Mensajes: 3.871
Toys in the attic.
|
Tu problema es que estas usando pocos tabs para alinear el texto, pero el tema es que la "longitud" del texto, no se cuenta con la cantidad de caracteres, sino con la longitud propiamente dicha. X ejemplo, en la palabra "rosario", que tiene 7 caracteres, tenes que agregar un tab extra, pero en la palabra "formosa", si le agregas uno mas, se te desalinea... Esto en cuanto a la segunda funcion AddData. En la primera, esa es la que tenes que usar, pero haciendole un par de modificaciones a la funcion Tabular: Private Function Tabular(Palabra As String, Espacio As Long, Optional AlignRight As Boolean) As String If AlignRight Then Tabular = Space(Espacio - Len(Palabra)) & vbTab & Palabra & vbTab Else Tabular = Palabra & Space(Espacio - Len(Palabra)) & vbTab End If End Function
A mi me quedo todo ordenadito, espero que te funcione a vos tambien, pero xq no usas mejor ListBox o varios Textbox?, o incluso varios Label... Espero que te sirva Un abrazo APOKLIPTICO
|
|
|
En línea
|
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore ASUS M4A89GTD-PRO/USB3 2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T) Seagate 500 Gb XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.
|
|
|
LeandroA
|
Hola Gracias si en el formulario se alinea, pero en un textbox no, pero no importa ya esta solucionado,en otro foro me dieron la solucion, que es utilizar una font de caracteres fijos por ejemplo "Courrier"
Saludos
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Dar ancho a columna JTable
Java
|
MiguelP
|
0
|
1,410
|
11 Abril 2014, 16:23 pm
por MiguelP
|
|
|
Mostrar texto en un Jlabel
Java
|
ferluqs
|
1
|
5,790
|
14 Octubre 2014, 02:06 am
por bengy
|
|
|
Asignar nombre filas y columna matrices
Java
|
miguel96
|
2
|
4,410
|
21 Noviembre 2014, 17:57 pm
por DarK_FirefoX
|
|
|
[Solucionado]Imposible mostrar texto de un txt en C -
Programación C/C++
|
Arturo400
|
6
|
3,278
|
26 Septiembre 2016, 00:04 am
por MAFUS
|
|
|
Guardar y mostrar informacion de un archivo en forma de columna
Programación C/C++
|
Aquilesvengo
|
0
|
1,251
|
8 Agosto 2018, 07:25 am
por Aquilesvengo
|
|