Pesquisar na Comunidade
Mostrando resultados para as tags ''drawcolumncell''.
Encontrado 1 registro
-
Boa tarde a todos! Pessoal, hoje me deparei com uma situação bem inusitada( pelo menos pra mim), trata-se do checkbox no dbgrid. Bem, eu utilizo esse recurso a anos, porém hoje ao criar uma nova grade em uma nova tela percebo uma lentidão incrível. Ao rodar a aplicação e clicar no ckeckbox dava para ir tomar um cafezinho e voltar para então ver o check marcado ou desmarcado. Levei um susto e fui conferir algumas grades, a minha surpresa estava tudo normal. Pensei é aqui o problema, vamos atras, nada encontrei de anormal. Bom para descargo de consciência criei uma tela semelhante a outra que esta funcionado, chamando os mesmos métodos, buscando os mesmos dados no banco, a grid com as propriedades setadas igualmente e o resultado é o seguinte: access Violation na linha Check := IS_CHECK[Column.Field.AsInteger = 1]; outro detalhe, na maquina do colega desenvolvedor, o access violation não ocorria mesmo dentro de um try except end, no entanto a lentidão era a mesma. Alguém já viu algo parecido? Obrigado pela atenção. Segue o código. procedure TfrmGerenciamentoFinanceiro.dbgContasReceberDrawColumnCell( Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); const IS_CHECK: array[Boolean] of Integer = (DFCS_BUTTONCHECK, DFCS_BUTTONCHECK or DFCS_CHECKED); var Check : Integer; R : TRect; begin inherited; if cdsContasReceber.Active then begin with dbgContasReceber do begin if Column.FieldName = 'IMPRIMIR' then begin Canvas.FillRect(Rect); Check := IS_CHECK[Column.Field.AsInteger = 1]; // Aqui estou tendo access Violation R := Rect; InflateRect(R, -2,-2); DrawFrameControl(Canvas.Handle, Rect, DFC_BUTTON, Check); end end; end; end;
- 3 respostas
-
- drawcolumncell
- checkbox
-
(e %d mais)
Tags: