Diego Fernandes Posted April 4, 2014 Report Share Posted April 4, 2014 (edited) Olá a todos... pensem em colocar o título como "Limitar String" mas não é bem isso que quero. Fiz um modulo de impressão tipo relatório, onde há colunas e linhas, porem em algumas colunas o texto costuma ultrapassar seu limite assim pensei como limitar remover o excesso de carácter de uma string. exemplo: (super resumido) rsrs Dim Fonte as Font = New Font("Arial", 8) Dim colTamanho(0) as integer = 0 Dim colTamanho(1) as integer = 40 Dim colTamanho(2) as integer = 170 Dim colTamanho(3) as integer = 185 Dim colTamanho(4) as integer = 30 while dr.reader dados(0) = dr("id") dados(1) = dr("nome_fantasia") dados(2) = dr("empresa") dados(3) = dr("valor") dados(4) = dr("desconto") for x = 0 to dados.count e.Graphics.DrawString(dados(x), fonte, , colTamanho(x), posicaoDaLinha, New StringFormat()) end for end while Resumidamente: o nome_fantasia e empresa poderia remover seu caracteres excedente. Obrigado a todos. Edited April 4, 2014 by thoga31 Tags code + GeSHi Link to comment Share on other sites More sharing options...
bids Posted April 4, 2014 Report Share Posted April 4, 2014 (edited) textbox.maxlenght =1 isto é para limitar o numero de textos que pode ser escritos if textbox1.lenght = 6 then Msgbox("Erro") Este é para o caso se o numero de carateres no texto for 6 Edited April 4, 2014 by bids Ajude-me? Link to comment Share on other sites More sharing options...
vikcch Posted April 5, 2014 Report Share Posted April 5, 2014 se só queres limitar na "impressão" podes usar o Substring, o primeiro numero é o inicio e o segundo e o nr de caracteres.... Dim s As String = "sexta feira" MsgBox(s.Substring(0, 3)) ou o left MsgBox(Microsoft.VisualBasic.Left(s, 3)) Link to comment Share on other sites More sharing options...
bids Posted April 5, 2014 Report Share Posted April 5, 2014 Podes me explicar acerca deste left»? 😁 Ajude-me? Link to comment Share on other sites More sharing options...
car4321 Posted April 5, 2014 Report Share Posted April 5, 2014 Podes me explicar acerca deste left»? 😁 Um simples Google deu: http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.strings.left.aspx Link to comment Share on other sites More sharing options...
bids Posted April 5, 2014 Report Share Posted April 5, 2014 Gostaria de Saber qual é o código para deletar um carater Ajude-me? Link to comment Share on other sites More sharing options...
FreiNando Posted April 5, 2014 Report Share Posted April 5, 2014 Podes e deves usar um rectângulo para desenhar o texto: e.Graphics.DrawString(Texto, Font, Brush, RectangleF) Assim o texto que não couber dentro do RectangleF será excluído. E para saberes o espaço necessário para esse Texto ser escrito todo usando várias linhas, usa uma variante da função e.Graphics.MeasureString, que devolve um rectângulo. A partir da altura desse rectângulo saberás onde colocar o próximo registo. O caminho mais curto para conseguir fazer muitas coisas é fazer uma de cada vez. Samuel Smiles Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now