schaukoski Postado Agosto 7, 2007 Denunciar Share Postado Agosto 7, 2007 Olá pessoal , tudo beleza?!pois bem..eu gostaria de saber como que eu faço pra personalizar uma row do meu string grid.. por exemplo: StringGrid.[1,2].Font := azul....gostaria de saber como que eu altero os valores de Font, Cor de fundo, Style de font, de um campo que eu já tenho exemplo[1,2]e gostaria tambem de saber.. se tem como tirar o Col lines, apenas de uma linha.. que é a minha linha final de TOTAL;;abraços!!!e Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Agosto 8, 2007 Denunciar Share Postado Agosto 8, 2007 parte do que você precisa pode tirar daqui:procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); procedure DrawBorder; // desenha as bordas inferior e direita begin with Sender as TStringGrid do begin // posiciona no canto inferior esquerdo da célula Canvas.MoveTo(Rect.Left, Rect.Bottom); // move desenhando uma linha até o canto inferior direito Canvas.LineTo(Rect.Right, Rect.Bottom); Canvas.LineTo(Rect.Right, Rect.Top -1); end; end; begin with Sender as TStringGrid do begin Canvas.Pen.Color := clBlack; if (ARow < FixedRows) or (ACol < FixedCols) then begin DrawFrameControl(Canvas.Handle, Classes.Rect(Rect.Left, Rect.Top, Rect.Right +1, Rect.Bottom +1), DFC_BUTTON, DFCS_BUTTONPUSH); DrawBorder; end else begin Canvas.Brush.Style := bsSolid; Canvas.Brush.Color := clWindow; Canvas.Pen.Mode := pmMerge; // desenha margens da célula só se não for a última linha do grid if ARow < (RowCount -1) then DrawBorder; end; // desenha o texto dentro do retângulo, sem preencher com cor de fundo Canvas.Brush.Style := bsClear; // se precisar trocar a cor da fonte é aqui Canvas.Font.Color := clRed; // desenha o texto dentro do retângulo Canvas.TextRect(Rect, Rect.Left+2, Rect.Top+2, Cells[ACol, ARow]); end; end;- tem que definir a propriedade DefaultDrawing = False;- falta tratar State (se com foco, selecionado, ...) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Agosto 10, 2007 Autor Denunciar Share Postado Agosto 10, 2007 Ola micheus obrigado pela resposta ai, mas eu não entendi nada cara... tem como você me explicar melhor como que eu faço pra editar uma célula, por exemplo a [1,3] ?on drawcell quando for desenhar o grid.. por exemplo:with Grid.cell [1,2] do font.color := red linhainferior := white.. etc...valeuu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Agosto 10, 2007 Denunciar Share Postado Agosto 10, 2007 Ola micheus obrigado pela resposta ai, mas eu não entendi nada cara...eu respondi o que você perguntou:como que eu faço pra personalizar uma row do meu string grid.. por exemplo:StringGrid.[1,2].Font := azul....gostaria de saber como que eu altero os valores de Font, Cor de fundo, Style de font, de um campo que eu já tenho exemplo[1,2]e gostaria tambem de saber.. se tem como tirar o Col lines, apenas de uma linha.. que é a minha linha final de TOTAL;isto tudo está ali. Colocou no evento OnDrawCell para ver o resultado?tem como você me explicar melhor como que eu faço pra editar uma célula, por exemplo a [1,3]?isto é outra questão. A edição você habilita através da propriedade Options (se não me engano - isto se já não for o padrão). Mas, a princípio se você precisar inicializar alguma célula, você pode fazer através de: StringGrid.Cells[num_col, num_lin] := 'testo a ser mostrado';on drawcell quando for desenhar o grid.. por exemplo:with Grid.cell [1,2]do font.color := red linhainferior := white.. etc...o evento ocorre quando uma célula deve ser desenhada, então, normalmente você não vai acessar uma posição fixa. Vai utilizar os parâmetros recebidos ACol (coluna) e ARow (linha) para acessar o texto na celula nesta coordenada e desenhá-la usando o canvas do StringGrid.Acho que o exemplo que coloquei deixa estas coisas relativamente claras. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Agosto 13, 2007 Autor Denunciar Share Postado Agosto 13, 2007 (editado) Obrigado.. jaja eu volto com dúvidas.. vou fazer alguns testes =) Editado Agosto 13, 2007 por schaukoski Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
schaukoski
Olá pessoal , tudo beleza?!
pois bem..
eu gostaria de saber como que eu faço pra personalizar uma row do meu string grid.. por exemplo:
StringGrid.[1,2].Font := azul....
gostaria de saber como que eu altero os valores de Font, Cor de fundo, Style de font, de um campo que eu já tenho exemplo[1,2]
e gostaria tambem de saber.. se tem como tirar o Col lines, apenas de uma linha.. que é a minha linha final de TOTAL;;
abraços!!!e Obrigado
Link para o comentário
Compartilhar em outros sites
4 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.