3 PONTOS NO FINAL DO MSFLEXGRID
pessoal... nao sei como perguntar, mas vou tentar...
queria que quando nao houve espaço para preencher uma coluna do grid aparecesse "..." no final, mostrando que ainda a dados se abrir mais a coluna.
faço assim para preencher as colunas...
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
mas é claro, o 3 pontos tem que aparecer só se nao houver espaço
grata
queria que quando nao houve espaço para preencher uma coluna do grid aparecesse "..." no final, mostrando que ainda a dados se abrir mais a coluna.
faço assim para preencher as colunas...
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
mas é claro, o 3 pontos tem que aparecer só se nao houver espaço
grata
faz um sub no forms que se algum campo for vazio ele escreve ...
no começo do sub de preencher o grid voce coloca pra chama a sub
se nao for isso me explica melhor o que quer.
tipo como voce puxa essas informaçoes e tals
abraços
no começo do sub de preencher o grid voce coloca pra chama a sub
public sub Campo_Vazio()
textbox1.text = "..."
end Sub
se nao for isso me explica melhor o que quer.
tipo como voce puxa essas informaçoes e tals
abraços
Para fazer isso basta você saber qtos caracteres podem ser mostrados na sua coluna do grid
if len(TBVlientes!nome_cliente) > 40 then
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente & "..."
else
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
end if
onde 40 número de caracteres que aparecem na tela
if len(TBVlientes!nome_cliente) > 40 then
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente & "..."
else
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
end if
onde 40 número de caracteres que aparecem na tela
Na verdade terá que descontar o três ... para poder exibir, ou seja,
if Len(TBVlientes!nome_cliente) > 40 then
Grid2.TextMatrix(.Rows - 1, 0) = Left(TBVlientes!nome_cliente, 37) & "..."
else
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
end if
if Len(TBVlientes!nome_cliente) > 40 then
Grid2.TextMatrix(.Rows - 1, 0) = Left(TBVlientes!nome_cliente, 37) & "..."
else
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
end if
hum.. valew pessoal era isso mesmo que eu queria...
mas tipo, vai depender da letra nao?? pois umas sao maiores que as outras.
e se o usuario aumentar a coluna no tempo de execução?
mas tipo, vai depender da letra nao?? pois umas sao maiores que as outras.
e se o usuario aumentar a coluna no tempo de execução?
alguem pode me ajudar...
Olha só... utilize o Printer como seu auxiliar nesta história.
1º iguale a fonte do Printer igual a fonte do Grid
Printer.Font = MSFlexGrid1.Font
2º Armazene a largura do texto em uma variável
Dim strWidth as Long
strWidth = Printer.TextWidth (TBVlientes!nome_cliente)
3º Compare com a Largura da Coluna e Printe o texto
if Grid2.ColWidth(0) < strWidth then
Grid2.TextMatrix(.Rows - 1, 0) = Left(TBVlientes!nome_cliente,37) & "..."
Else
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
End if
1º iguale a fonte do Printer igual a fonte do Grid
Printer.Font = MSFlexGrid1.Font
2º Armazene a largura do texto em uma variável
Dim strWidth as Long
strWidth = Printer.TextWidth (TBVlientes!nome_cliente)
3º Compare com a Largura da Coluna e Printe o texto
if Grid2.ColWidth(0) < strWidth then
Grid2.TextMatrix(.Rows - 1, 0) = Left(TBVlientes!nome_cliente,37) & "..."
Else
Grid2.TextMatrix(.Rows - 1, 0) = TBVlientes!nome_cliente
End if
Tópico encerrado , respostas não são mais permitidas