Cor da DIALOG

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Cor da DIALOG

Mensagem por asimoes »

BACKCOLOR não foi implementado ou feito uso a versão atual da hwgui, o parâmetro na guilib.ch está lá , MAS NÃO É PASSADO para HDialog():New()

Somente COLOR é usado, como bColor

[ <bclr: BACKCOLOR, COLOR> <bColor> ] ;

BACKCOLOR não tem uso
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
marcosgambeta
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 16 Jun 2005 22:53

Cor da DIALOG

Mensagem por marcosgambeta »

asimoes escreveu:BACKCOLOR não foi implementado ou feito uso a versão atual da hwgui, o parâmetro na guilib.ch está lá , MAS NÃO É PASSADO para HDialog():New()

Somente COLOR é usado, como bColor

[ <bclr: BACKCOLOR, COLOR> <bColor> ] ;

BACKCOLOR não tem uso
Nos meus testes aqui, ambos geraram o mesmo efeito. Da forma como está implementado no comando, COLOR e BACKCOLOR estão funcionando como sinônimos.

Então, usar um ou outro dá o mesmo resultado. Não está assim para você ?

Aproveitando, havia me esquecido que o Harbour entende números hexadecimais. Então, nem se precisa da função de conversão. Funciona também como abaixo:

Código: Selecionar todos

PROCEDURE Main()

   LOCAL oDialog

   INIT DIALOG oDialog TITLE "Teste" SIZE 640, 480 COLOR 0x00FF00

   ACTIVATE DIALOG oDialog

RETURN
Atenciosamente,
Marcos Antonio Gambeta
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Cor da DIALOG

Mensagem por asimoes »

marcosgambeta escreveu:Então, usar um ou outro dá o mesmo resultado. Não está assim para você ?
BACKCOLOR na 2.17 não está implementado e na 2.2x olhando o fonte não vi o uso, pelo menos nos parâmetros New() não está passando
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
marcosgambeta
Usuário Nível 3
Usuário Nível 3
Mensagens: 332
Registrado em: 16 Jun 2005 22:53

Cor da DIALOG

Mensagem por marcosgambeta »

asimoes escreveu:BACKCOLOR na 2.17 não está implementado e na 2.2x olhando o fonte não vi o uso, pelo menos nos parâmetros New() não está passando
Olhando no fonte da classe, realmente só tem um parâmetro para cor. Mas vamos tentar por outro ângulo (acho que agora consigo me expressar corretamente).

O comando COLOR da 2.17 se refere, na verdade, à cor de fundo da janela (a cor de sua superfície). Então, BACKCOLOR seria um termo mais adequado.

Na versão corrente, foi introduzido o comando BACKCOLOR junto com o COLOR. O desenvolvedor pode usar tanto um como o outro. Com isto, introduziu-se o termo correto, mas sem perder a compatibilidade com o que era antes.

Meus comentários anteriores foram sobre os comandos e não sobre o código-fonte da classe:

Código: Selecionar todos

INIT WINDOW ... COLOR ...
ou
INIT WINDOW ... BACKCOLOR ...

INIT DIALOG ... COLOR ...
ou
INIT DIALOG ... BACKCOLOR ...
Quer use COLOR ou BACKCOLOR, o que o desenvolvedor está definindo sempre será a cor de fundo da janela (daí haver apenas 1 parâmetro).

Bom, acho que agora consegui me explicar (espero).
Atenciosamente,
Marcos Antonio Gambeta
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Cor da DIALOG

Mensagem por Itamar M. Lins Jr. »

Olá!
Aproveitando, havia me esquecido que o Harbour entende números hexadecimais. Então, nem se precisa da função de conversão. Funciona também como abaixo:
Então resolveu mais outro problema, pois eu tinha colocado dentro de aspas "" e não tinha funcionado, deu erro. Quer dizer que não precisa delas.
... SIZE 640, 480 COLOR "0x00FF00" //assim dá erro.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Cor da DIALOG

Mensagem por asimoes »

Isso mesmo Marcos.

No fonte hdialog.prg (2.17)

O que define a cor é a chamada ::Setcolor( , bColor )

Na 2.2x

Código: Selecionar todos

IF bColor != Nil
   ::brush := HBrush():Add( bColor )
ENDIF
O método SETCOLOR na 2.17 está no fonte hcwindow, e faz uso da HBrush():Add( bColor )

Resumindo não há compatibilidade entre 2.17 e 2.2x, embora eu prefira a 2.17, que fiz algumas modificações e adaptações, algumas incorporações da 2.2x
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Responder