Thiago Torres Postado Outubro 7, 2006 Denunciar Share Postado Outubro 7, 2006 Galera, to com uma dúvida...existe alguma funçãoou algum macete usado para alinhar algo no c++ ???Estou fazendo um PRINTF, no qual na primeira linha uso como uma linha fixa e debaixo dela coloco um FOR para listaros registro encontrados...Pois bem, sem nenhum problema parafazer isto...o que acontece é o seguinte, eu queria que ficasse alinhado os registros como abaixo:---------------------------------------------------------| Código | Descricao | Valor | Qtd. |---------------------------------------------------------| 12345 | Caneta Azul | 1.25 | 150 |---------------------------------------------------------| 12346 | Caneta Vermelha | 1.30 | 290 |---------------------------------------------------------E por aí vai...mais acontece que quando eu digito por exemplo um código com menos digitos, ou mais...a barraque separa cada coluna, se move, como abaixo:---------------------------------------------------------| Código | Descricao | Valor | Qtd. |---------------------------------------------------------| 12345 | Caneta Azul | 1.25 | 150 |---------------------------------------------------------| 123 | Caneta Vermelha | 1.30 | 290 |---------------------------------------------------------Gostaria de saber se conhecem alguma maneira de deixarela fixa, independente do numero de digitos que no casoo campo CODIGO vai possuir....ABAIXO A IMAGEM EXPLICANDO O QUE QUERO:Obrigado galera Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Denis Bittencourt Muniz Postado Outubro 8, 2006 Denunciar Share Postado Outubro 8, 2006 Hum.. acho mais fácil você determinar um limite da caractéres para todos os campos dessa sua grade de produtos (que está muito criativa! : ) ), assim não desalinhado a grade. Caso escolha essa opção, use o método 'width' do objeto 'cout' para poder alinhar a grade. Referência do método 'width'Apesar que se você guarda todos os registros em um vetor, você verificaria o tamanho (quantidade de caractéres) de todos os campos de todos os registros e determinaria um novo layout de grade, apagndo a atual (usando a função 'clrscr' da biblioteca 'conio.h') e redesenhado a mesma novamente com todos os dados do vetor. Mas o desempenho do seu programa iria cair...Estamos aí, falows! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 iSoron Postado Outubro 12, 2006 Denunciar Share Postado Outubro 12, 2006 É possível fazer isso com o printf também, caso você esteja usando C.Por exemplo:#include <stdio.h> main() { printf("%5d\n", 14); printf("%5d\n", 120); printf("%5d\n", 3000); }Com C++, tem o método width.http://cppreference.com/cppio/width.htmlhttp://cppreference.com/stdio/printf.htmlTé mais. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Thiago Torres
Galera, to com uma dúvida...existe alguma função
ou algum macete usado para alinhar algo no c++ ???
Estou fazendo um PRINTF, no qual na primeira linha uso como uma linha fixa e debaixo dela coloco um FOR para listar
os registro encontrados...Pois bem, sem nenhum problema para
fazer isto...o que acontece é o seguinte, eu queria que ficasse alinhado os registros como abaixo:
---------------------------------------------------------
| Código | Descricao | Valor | Qtd. |
---------------------------------------------------------
| 12345 | Caneta Azul | 1.25 | 150 |
---------------------------------------------------------
| 12346 | Caneta Vermelha | 1.30 | 290 |
---------------------------------------------------------
E por aí vai...mais acontece que quando eu digito por exemplo um código com menos digitos, ou mais...a barra
que separa cada coluna, se move, como abaixo:
---------------------------------------------------------
| Código | Descricao | Valor | Qtd. |
---------------------------------------------------------
| 12345 | Caneta Azul | 1.25 | 150 |
---------------------------------------------------------
| 123 | Caneta Vermelha | 1.30 | 290 |
---------------------------------------------------------
Gostaria de saber se conhecem alguma maneira de deixar
ela fixa, independente do numero de digitos que no caso
o campo CODIGO vai possuir....
ABAIXO A IMAGEM EXPLICANDO O QUE QUERO:
Obrigado galera
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.