dúvida com quick report.

Delphi

14/12/2004

Olá,

estou gerando um relatório e tenho um campo nota pretendida e nota alcançada, gostaria que toda vez que a nota alcançada fosse menor que a nota pretendida, o valor ficasse na cor vermelha...


tem como fazer isso?


Balceiro

Balceiro

Curtidas 0

Respostas

Gandalf.nho

Gandalf.nho

14/12/2004

Use o evento BeforePrint da banda vinculada ao seu dataset. Basta criar um código que compara os valores dos dois campos e setar a cor do controle de acordo. É bem simples.


GOSTEI 0
Balceiro

Balceiro

14/12/2004

eu sei, mas como é que eu seto a cor se eu não sei o nome do componente?


GOSTEI 0
Gandalf.nho

Gandalf.nho

14/12/2004

Basta ver o nome dele no Object Inspector, não tem mistério.


GOSTEI 0
Balceiro

Balceiro

14/12/2004

eu sei, mas mesmo colocando um if, quando se muda a cor de um, muda a cor de todos.


GOSTEI 0
Gandalf.nho

Gandalf.nho

14/12/2004

Como assim, todos? Todos os controles ou todos os registros? Se for de todos os registros, ajeite seu IF e coloque um ELSE para ajustar a cor de volta ao padrão normal do seu relatório, assim:

IF notaalcançada < notapretendida THEN
mude a cor para vermelho
ELSE
mude a cor para o normal (geralmente preto)

Se você não faz isso, ele coloca todas as linhas em vermelho a partir da primeira que mudar...


GOSTEI 0
Balceiro

Balceiro

14/12/2004

é verdade, pode ser, vou testar.

obrigado.


GOSTEI 0
POSTAR