Criei a procedure abaixo para pintar os grids criados em tempo de execução.....
procedure PintaGrid(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
If odd(dsAgenda.DataSet.RecNo) then
begin
dgAgenda.Canvas.Font.Color := clBlack;
dgAgenda.Canvas.Brush.Color := clMoneyGreen;
end
else
begin
dgAgenda.Canvas.Font.Color := clBlack;
dgAgenda.Canvas.Brush.Color := clWhite;
end;
if gdSelected in State then
begin
dgAgenda.Canvas.Font.Color := clWhite;
dgAgenda.Canvas.Brush.Color := clSkyBlue;
end
else
begin
dgAgenda.Canvas.Font.Color := clBlack;
end;
dgAgenda.Canvas.FillRect(Rect);
dgAgenda.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
e ai coloquei na criação do grid, mas não está aparecendo as linhas pintadas....
o que poderia ser ?.
Pergunta
robinhocne
Criei a procedure abaixo para pintar os grids criados em tempo de execução.....
e ai coloquei na criação do grid, mas não está aparecendo as linhas pintadas.... o que poderia ser ?.{ Cria o DBGrid da Agenda ...} try dgAgenda := TJvDBGrid.Create(Self); with dgAgenda do begin Parent := pnAgenda; Align := alClient; Name := 'dgAge' + Dtm.QryPesquisar.FieldByName('ProNome').AsString; Options := [dgEditing, dgTitles, dgColLines, dgTabs, dgConfirmDelete, dgCancelOnExit]; Font.Size := 8; Font.Style := [fsBold]; DataSource := dsAgenda; //Adiciona as Colunas no dgAgenda Columns.Add; Columns.Items[0].FieldName := 'AgeHorIni'; Columns.Items[0].Width := 50; Columns.Items[0].Font.Size := 8; Columns.Items[0].Title.Caption := 'H. Inicial'; Columns.Items[0].Title.Font.Size := 8; Columns.Add; Columns.Items[1].FieldName := 'AgeHorFin'; Columns.Items[1].Width := 50; Columns.Items[1].Font.Size := 8; Columns.Items[1].Title.Caption := 'H. Final'; Columns.Items[1].Title.Font.Size := 8; Columns.Add; Columns.Items[2].FieldName := 'AgeCliente'; Columns.Items[2].Width := 50; Columns.Items[2].Font.Size := 8; Columns.Items[2].Title.Caption := 'Cliente'; Columns.Items[2].Title.Font.Size := 8; Columns.Items[2].Title.Font.Name := 'Arial'; OnDrawColumnCell := PintaGrid; end; except on E:Exception do begin ShowMessage('Erro ao criar DbGrid dgAge' + Dtm.QryPesquisar.FieldByName('ProNome').AsString + #10 + e.Message); exit; end; end;Editado por robinhocneLink para o comentário
Compartilhar em outros sites
7 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.