DIMENSIONAR HEIGTH E WIDTH DO MSHFLEXGRID

USUARIO.EXCLUIDOS 17/08/2007 15:30:57
#231418
é possível dimencionar o MSHFlexGrid de acordo com o conteudo, tipo uma coluna tem um texto grande dai fica do tamanho do texto altura e largura e outra q tem um texto pequeno fica do tamanho pequeno do texto... listando do banco de dados.

Igual fazer com o mouse individual, mas queria automático.

USUARIO.EXCLUIDOS 17/08/2007 15:33:27
#231419
Deixa explicar melhor, o que prefiro é que seja ajustado automaticamente o Height do mshflexgrid conforme o conteudo.
USUARIO.EXCLUIDOS 17/08/2007 15:38:06
#231421
Resposta escolhida


Cara..tenta isso

FlexGrid.ColWidth(X) = Len(Texto a ser inserido) * 100 'X é a coluna

ele vai ajustando conforme o tamnho do texto

boa sorte e sucesso
F001E 17/08/2007 15:40:38
#231423
bom...pode fazer assim...nunca testei...mas tenta ae...

With Grid
.Cols = 2
.Rows = 2
.Row = 0
.Col = 0
.ColWidth(0) = 200 + Len(Campo.Text)
.ColAlignment(1) = 3
.ColWidth(1) = 500 + Len(Campo.Text
.TextMatrix(0, 1) = "Marc"
End With
USUARIO.EXCLUIDOS 17/08/2007 15:40:41
#231424


Cara, e outra..esse valor 100..é uma constatnte q achei aki...vc pode ir mudando-a...pra melhor ajustar

n fica exagerado ..boa sorte
USUARIO.EXCLUIDOS 17/08/2007 15:41:33
#231425
Olá Sinkertec, valeu pela velocidade na resposta. Aqui onde você colocou = Len (texto a ser inserido) não entendi, eu quero listar do banco.
USUARIO.EXCLUIDOS 17/08/2007 15:45:34
#231427

Por exemplo se for o campo da tabela..vc coloca

= Len(Tabela!Campo) ...
USUARIO.EXCLUIDOS 17/08/2007 15:50:18
#231429
Posso ajudar??? Lah vai Cara, tamanhodacoluna = len(texto) indica que vc vai ter que usar uma funcao para cada palavra. Quando vc carregar a informacaum do banco vc jah chama a funcao com retorno.
Detalhes:
Naum esqueca que pode ter um campo maior que o outro, entaum testa se o tamanho da coluna eh maior do que esta sendo inserido, se for vc atualiza se naum...naum.
Outra nas letras maiusculas utrapassam o * 100, ou vc coloca tudo em minusculo ou se for maiusculo coloca 150. por exemplo.
Espero ter ajudado. tchau
USUARIO.EXCLUIDOS 17/08/2007 15:54:48
#231430
Valeu pessoal, agora tenho material para trabalhar, obrigado Sinkertec, F001E e Sabotador.

Vou tentar todas as possibilidades.
USUARIO.EXCLUIDOS 17/08/2007 15:56:25
#231433
Exemplo:
Dim Cliente as string

Cliente = Tabela!NomeCliente

if funcao(Cliente) > 0 and funcao(Cliente) > msflex.colWidth(0) then
msflex.ColWidth(0) = funcao(Cliente)
end if

public function funcao(texto as string) as integer
funcao = len(texto)
end Function

USUARIO.EXCLUIDOS 17/08/2007 16:17:12
#231437
Mas, isso não é Funcional, veja só:
vc tem um registro com 30 caracteres e outro com 40 a coluna só vai poder ficar no tamanho da de 40.

Agora a linha tem a propriedade wordwrap.

E para coluna também pode deixar flex resize (colum), onde o usuario
redimensiona conforme sua necessidade.

Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas