Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-02-2009
Avatar de krlox31416
krlox31416 krlox31416 is offline
Miembro
 
Registrado: jun 2008
Ubicación: San Juan del Río, Querétaro, México
Posts: 75
Poder: 16
krlox31416 Va por buen camino
Alinear un listbox como si se tratara de un memo

Hola programadores!!!
Tengo un problema con un componente listbox, me gustaría saber si este componente tiene alguna propiedad para alinear los ítems agregados al listbox como ejemplo esta el memo en el cual se especifica el tipo de alineación ya sea alinear a la derecha, izquierda o centrado. type TAlignment = (taLeftJustify, taRightJustify, taCenter);
Eje:
Código Delphi [-]
procedure TForm1.Alienear_a_la_derechaClick(Sender: TObject);
begin
Memo1.Alignment:=taRightJustify;
end;
procedure TForm1.Alienear_a_la_izquierdaClick(Sender: TObject);
begin
Memo1.Alignment:=taLeftJustify;
end;
procedure TForm1.CentrarClick(Sender: TObject);
begin
Memo1.Alignment:=taCenter;
end;
el problema es que después de hacer una consulta cargo en el listbox los siguientes datos de mi tabla artículos con los atributos: Descripción y Precio
Código Delphi [-]
while not datamodule2.Table2.Eof do                                  
begin
ListBox1.Items.Add(Datamodule2.Table2.FieldByName('Descripción').AsString
+'                             $ '+DataModule2.Table2.FieldByName('Precio').AsString+' PESOS');
Edit2.Text:=DataModule2.Table2.Fieldbyname('Precio').AsString;
cobros:= cobros + StrToFloat(Edit2.Text);
Edit2.Text:=FloatToStr(cobros);
Edit1.Text:='$ '+Edit2.Text +' pesos';
i:=1;
Edit9.Text:=CantidadEnLetra(StrToFloat(Edit2.Text) ,i);
ComboBox1.Text:='';
ComboBox1.SetFocus;
Exit;
end;
como podrán ver concateno el precio a la descripción y dejo espacios en blanco para que el precio no este muy junto a la descripción.
Así es como me queda en el listbox con el código anterior:
Código Delphi [-]
COCA COLA DE 600  ML     $ 6.00 PESOS
CERVEZA CORONA MEDIA      $ 8.00 PESOS
CIGARROS MALVORO      $19.00 PESOS
TEQUILA CAZADORES 1 L     $ 185.00 PESOS
Me gustaría que cada que realizo la consulta el precio siempre este justificado alineado a la derecha para que el usuario visualice mejor la lista de los precios y por cuestiones de estética.
Eje:
Código Delphi [-]
COCA COLA DE 600  ML          $ 6.00 PESOS
CERVEZA CORONA MEDIA        $ 8.00 PESOS
CIGARROS MALVORO              $19.00 PESOS
TEQUILA CAZADORES 1 L     $ 185.00 PESOS
Además el listbox es perfecto debido a sus características y se adecua al sistema que estoy haciendo por eso no utilizo el memo porque no me permite seleccionar su contenido e ir haciendo todo un recorrido como el listbox en sus ítems.
Esto fue lo primero que se me ocurrió:
Código Delphi [-]
ListBox1.Items.Text:='                     '+ListBox1.Items[0];
Pero lo que note fue que tendría que ir incrementando la posición
Cual será la solución???
Utilizo delphi 5 y 6…
Por adelantado 1000 gracias si alguien puede ayudarme!!!
Estoy a sus ordenes!!!
__________________
el cielo me dio un cariño sin merecerlo... chimikuilo!!!

Última edición por krlox31416 fecha: 19-02-2009 a las 04:51:34. Razón: por pura estetica que se vea mejor el codigo
Responder Con Cita
  #2  
Antiguo 19-02-2009
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Bueno, pero, habiendo controles más apropiados para mostrar datos tabulares como el ListView,



¿para qué molestarse arreglando el listbox?

// Saludos
Responder Con Cita
  #3  
Antiguo 19-02-2009
luisgutierrezb luisgutierrezb is offline
Miembro
 
Registrado: oct 2005
Ubicación: México
Posts: 925
Poder: 19
luisgutierrezb Va por buen camino
tambien puedes utilizar columnas en el listbox, busca en aboutDelphi el tip, o tambien puedes dibujarlos tu mismo, usa la api de windows drawtext
Responder Con Cita
  #4  
Antiguo 22-02-2009
Avatar de krlox31416
krlox31416 krlox31416 is offline
Miembro
 
Registrado: jun 2008
Ubicación: San Juan del Río, Querétaro, México
Posts: 75
Poder: 16
krlox31416 Va por buen camino
Muchas gracias por responder amigos foristas!!!

El problema como tal es que el listbox se adecua perfecto a mi diseño...
aqui adjunto una imagen!!!
http://img23.imageshack.us/my.php?image=ventas.jpg
__________________
el cielo me dio un cariño sin merecerlo... chimikuilo!!!

Última edición por krlox31416 fecha: 22-02-2009 a las 03:28:57. Razón: no se ve imagen no me queda cargar mi imagen
Responder Con Cita
  #5  
Antiguo 22-02-2009
Avatar de krlox31416
krlox31416 krlox31416 is offline
Miembro
 
Registrado: jun 2008
Ubicación: San Juan del Río, Querétaro, México
Posts: 75
Poder: 16
krlox31416 Va por buen camino
gracias por responder!!!

[quote=krlox31416;338959]El problema como tal es que el listbox se adecua perfecto a mi diseño...
aqui adjunto una imagen!!!



y como dices roman casi no he utilizadi el listview...
se parece al dbgrid... se que le moviste a las propiedades para que se vea de esa forma...

pero como decia el componente listbox se adecua perfecto a mi diseño...

y lo que comenta luis... voy a seguir checando las columnas y eso de la api...

si tengo problemas les aviso... para que me sigan orientando...

muchas gracias por sus ideas...

se que mi porblema es muy sencillo pero tengo tiempo de no estar programando... jejeje

este hilo seguira dando más porque mis dudas no terminan...

un saludo!!!
__________________
el cielo me dio un cariño sin merecerlo... chimikuilo!!!
Responder Con Cita
  #6  
Antiguo 22-02-2009
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola krlox31416,
Disculpa pero creo que el componente que eliges no es el más adecuado. ¿Donde está el "perfecto" si para conseguir una visualización apropiada te vez obligado a meter mano a más código?

Yo preferiría emplear antes del TListBox un TStringGrid en todo caso. O un TListView como menciona roman... o porqué no... el DBGrid que de forma tan especial y automática puede mostrar los valores numéricos alineados a la derecha. Con el DBGrid basta con asociarle un DataSource que esté ligado al DataSet.Y Listo, no más código.

La verdad es que me cuesta decir que el ListBox sea el más adecuado. Me gustaría saber que uso, aparte de algo visual, pretendes darle. Si nos pudieras comentar más al respecto de porqué consideras que es el más indicado tal vez podríamos entender tu punto de vista y/o proponerte otras alternativas.

Como recomendación, emplea Querys en vez de Tables. Sobre todo si el sistema que estás diseñando está pensado en arquitectura C/S.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #7  
Antiguo 22-02-2009
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Quisiera decir que, si se estima necesario, el "TListView" que recomendaba Román puede no mostrar las "cabeceras de las columnas", de modo que, si no me equivoco, la "lista" quedaría muy similar (por no decir igual) que una "TListBox" cualquiera, pero, mostraría los datos "tabulados", tal como quieres.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #8  
Antiguo 23-02-2009
Avatar de krlox31416
krlox31416 krlox31416 is offline
Miembro
 
Registrado: jun 2008
Ubicación: San Juan del Río, Querétaro, México
Posts: 75
Poder: 16
krlox31416 Va por buen camino
lo que no quiero es que no aparescan las celdas...

simplemente no deseo poner celdas...
pero noto que con el listbox puedo hacer el recorrido con el teclado e ir viendo su contenido...

en mi caso ir viendo la lista de articulos que se hacen mediante una consulta...

hecha con mi tabla...

empleando modo de busqueda manual a a traves de un lector de código de barra...

lo que si no uso mucho son los querys como comenta delphius y lo que comenta dec es hora de ir viendo el listview... pero casi no lo llegue a utilizar ...

hasta hace poco junto con el shell

bueno pero y el cdigo que pasaria???

solo lo adapto al listview cada que realize mi busqueda???...

bueno pues dejen sigo checando...

y gracias por seguirme orientando...

lo voy a checar a mas tardar un par de días mas...

saludos!!!
__________________
el cielo me dio un cariño sin merecerlo... chimikuilo!!!
Responder Con Cita
  #9  
Antiguo 24-02-2009
Avatar de krlox31416
krlox31416 krlox31416 is offline
Miembro
 
Registrado: jun 2008
Ubicación: San Juan del Río, Querétaro, México
Posts: 75
Poder: 16
krlox31416 Va por buen camino
un dbgrid no me serviria!!!

un dbgrid no me funcionaria porque al ligarlo al datasource...

este me jalara todos los datos contenidos en mi tabla articulos...

ademas las celdas no se ven bien en el diseño de la ventana...

aqui las imagenes de como quedaria con un dbgrid...



y aca una imagen de como se veria con el listbox... pero faltaria alinear el precio...



no creen que se ve mejor si uso el listbox???...

ademas sigo sin poder adaptar el listview...

no se como poner el codigo...

__________________
el cielo me dio un cariño sin merecerlo... chimikuilo!!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Sobre el Memo y el listbox Steven Tyler Varios 2 05-10-2007 00:48:10
Como alinear los numeros que imprimo hacia la derecha??? McKarthY Impresión 1 05-10-2006 16:06:47
Cómo Se Puede alinear los textos en los edits? kman Varios 4 02-05-2006 10:23:13
Impresora punto matriz, como alinear los valores tipo dinero ? Jorge Taveras Impresión 2 19-05-2005 01:08:30
Alinear elementos de un ListBox Tecnic2 OOP 2 05-01-2005 17:02:50


La franja horaria es GMT +2. Ahora son las 20:03:06.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi