Cores de tela de fundo - Branco e amarelo intensos
Moderador: Moderadores
-
EduardoSPno
- Usuário Nível 2

- Mensagens: 59
- Registrado em: 03 Mai 2012 16:23
- Localização: Sao Paulo/SP
Cores de tela de fundo - Branco e amarelo intensos
Fala amigos, tudo bem ?!?, gostaria de saber se alguem sabe como deixar o funco "branco" de tela, mas "branco" mesmo, nao o cinza habitual q fica.
Exemplo: Letra Azul e fundo branco
set color to b+/w
Obrigado por todos, abraco ...
Exemplo: Letra Azul e fundo branco
set color to b+/w
Obrigado por todos, abraco ...
Editado pela última vez por Pablo César em 04 Out 2012 13:12, em um total de 2 vezes.
Razão: O título foi alterado para melhor identificação do problema e exemplo no futuro.
Razão: O título foi alterado para melhor identificação do problema e exemplo no futuro.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda com cores de tela
Veja o exemplo este exemplo:
Compile e verá este resultado: Você também pode alterar as tonalidades e até mesmo a cor original que o Clipper oferece através da função VGAPALETTE() da biblioteca CT.Lib, para maiores detalhes leia este tópico: https://pctoledo.org/forum/viewto ... ilit=cores
Código: Selecionar todos
SetMode(25,80)
SetColor("gr+/n")
For i=0 to 24
@ i,00 Say Replicate(Chr(219),80) Color "w+/b"
Next
DBGShadow(05,10,18,50)
@ 05,10 To 18,50
For i=6 to 17
@ i,11 Say Replicate(Chr(219),39) Color "gr+/w"
Next
@ 24,00 Say PadC("Tecle uma tecla para continuar...",80) Color "N/W"
Inkey(0)Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Ajuda com cores de tela
Olá!
Legal o exemplo do Pablo mas, para o que foi pedido, creio que baste:
Legal o exemplo do Pablo mas, para o que foi pedido, creio que baste:
Código: Selecionar todos
SetColor( "B+/W*" )[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda com cores de tela
O asterisco serve para deixa piscando. E a sua indicação simplesmente não funciona no fundo quando utilizado "W+". Por isso foi colocado o caracter cheio ( Chr(219) ) para que pudesse aparecer qualquer cor como fundo. A não ser que atarvés do VGAPALETTE mude a cor "W" (branco cinza) para uma cor mais intensa como branco total.creio que baste:
SetColor( "B+/W*" )
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Ajuda com cores de tela
Olá!
Testei em xHarbour e funciona perfeitamente. Para desativar o fundo piscante é só colocar antes um:Infelizmente não tenho o Clipper instalado para testar nele.
Testei em xHarbour e funciona perfeitamente. Para desativar o fundo piscante é só colocar antes um:
Código: Selecionar todos
SetBlink( .F. )[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda com cores de tela
Esclarecendo...
Pior Alexandre que funciona em Clipper, mas tem que colocar o SetBlink( .F. ), eis o código exemplo e tela:Pena que a sombra fica preta e não cinza como apareceu no meu primeiro exemplo. A cor amarela do quadro interno também naõ ficou com amarelo intenso.
Se substituir o "+" pelo "*" ai funciona normal. Rs vai saber... !! Mas a sombra continua preta e não cinza... rs
Pior Alexandre que funciona em Clipper, mas tem que colocar o SetBlink( .F. ), eis o código exemplo e tela:
Código: Selecionar todos
SetBlink( .F. )
SetMode(25,80)
SetColor( "B+/W*" )
cls
SetColor("gr+/n")
DBGShadow(05,10,18,50)
SetColor("gr+/n")
@ 05,10 To 18,50
SetColor("n/gr+")
@ 06,11 Clear To 17,49
@ 24,00 Say PadC("Tecle uma tecla para continuar...",80) Color "N/W"
Inkey(0)
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Ajuda com cores de tela
Olá!
Funciona sim. Usei isso durante muitos anos em Clipper.
Se puder, tente fazer a sombra com o código abaixo e veja se fica melhor que aquela área preta. Peguei isso em algum lugar. Nem sei como funciona mas dá um aspecto melhor.
Funciona sim. Usei isso durante muitos anos em Clipper.
Se puder, tente fazer a sombra com o código abaixo e veja se fica melhor que aquela área preta. Peguei isso em algum lugar. Nem sei como funciona mas dá um aspecto melhor.
Código: Selecionar todos
/***
*
* BoxShadow( <nTop>, <nLeft>, <nBottom>, <nRight> ) --> NIL
*
* Draw a box shadow with see through
*
*/
//------------------------------------------------------------------------------
FUNCTION BoxShadow( _Li, _Ci, _Lf, _Cf )
LOCAL Tela1, Tela2, Tela3, Tela4
Tela3 := SaveScreen(_Li + 1, _Cf + 1, _Lf + 1, _Cf + 1)
Tela4 := SaveScreen(_Lf + 1, _Ci + 1, _Lf + 1, _Cf + 1)
For Tela1:= 2 to Len(Tela3) step 2
Tela2:= shadow(Asc(Substr(Tela3,Tela1,1)))
Tela3:= Stuff(Tela3,Tela1,1,Tela2)
End
For Tela1:= 2 to Len(Tela4) step 2
Tela2:= shadow(Asc(Substr(Tela4, Tela1,1)))
Tela4:= Stuff(Tela4,Tela1,1,Tela2)
End
RestScreen(_Li + 1, _Cf + 1, _Lf + 1, _Cf + 1, Tela3)
RestScreen(_Lf + 1, _Ci + 1, _Lf + 1, _Cf + 1, Tela4)
Return NIL
//------------------------------------------------------------------------------
STATIC FUNCTION Shadow(_Car)
Local Var1, Var2, Var3
Var1:= _Car % 16
Var2:= (_Car - Var1) / 16
Var3:= {0, 0, 8, 8, 0, 8, 0, 8, 0, 1, 2, 3, 4, 5, 6, 7}
Var1:= Var3[Var1 + 1]
Var2:= Var3[Var2 + 1]
RETURN Chr(16 * Var2 + Var1)
//------------------------------------------------------------------------------
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Ajuda com cores de tela
Funcionou desta vez Alexandre, obrigado e desculpe a minha precipitação. Eu não sabia que o asterisco pudesse funcionar para alterar a intensidade após o SetBlink(.f.). Ficou igualzinha !
Com a mesma aparência da primeira tela:
Código: Selecionar todos
SetBlink( .F. )
SetMode(25,80)
SetColor( "B+/W*" )
cls
BoxShadow(05,10,18,50)
SetColor("gr+/n")
@ 05,10 To 18,50
SetColor("n/gr*")
@ 06,11 Clear To 17,49
@ 24,00 Say PadC("Tecle uma tecla para continuar...",80) Color "N/W"
Inkey(0)
FUNCTION BoxShadow( _Li, _Ci, _Lf, _Cf )
LOCAL Tela1, Tela2, Tela3, Tela4
Tela3 := SaveScreen(_Li + 1, _Cf + 1, _Lf + 1, _Cf + 1)
Tela4 := SaveScreen(_Lf + 1, _Ci + 1, _Lf + 1, _Cf + 1)
For Tela1:= 2 to Len(Tela3) step 2
Tela2:= shadow(Asc(Substr(Tela3,Tela1,1)))
Tela3:= Stuff(Tela3,Tela1,1,Tela2)
End
For Tela1:= 2 to Len(Tela4) step 2
Tela2:= shadow(Asc(Substr(Tela4, Tela1,1)))
Tela4:= Stuff(Tela4,Tela1,1,Tela2)
End
RestScreen(_Li + 1, _Cf + 1, _Lf + 1, _Cf + 1, Tela3)
RestScreen(_Lf + 1, _Ci + 1, _Lf + 1, _Cf + 1, Tela4)
Return NIL
STATIC FUNCTION Shadow(_Car)
Local Var1, Var2, Var3
Var1:= _Car % 16
Var2:= (_Car - Var1) / 16
Var3:= {0, 0, 8, 8, 0, 8, 0, 8, 0, 1, 2, 3, 4, 5, 6, 7}
Var1:= Var3[Var1 + 1]
Var2:= Var3[Var2 + 1]
RETURN Chr(16 * Var2 + Var1)Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Cores de tela de fundo - Branco e amarelo intensos
Olá!
Legal! São os guardados do fundo do baú...
Talvez fosse interessante colocar esta rotina de sombra em um local separado, para facilidade de acesso e localização. Não sei se na Seção de Downloads ou na parte de Contribuições...
Legal! São os guardados do fundo do baú...
Talvez fosse interessante colocar esta rotina de sombra em um local separado, para facilidade de acesso e localização. Não sei se na Seção de Downloads ou na parte de Contribuições...
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
-
EduardoSPno
- Usuário Nível 2

- Mensagens: 59
- Registrado em: 03 Mai 2012 16:23
- Localização: Sao Paulo/SP
Cores de tela de fundo - Branco e amarelo intensos
Fala galera, valeu pela força, mas acho q faltou dizer uma coisinha, nos exemplos a tela fica branca utilizando o replicate(chr)219)), mas por exemplo se eu for deixar algo digitado no meio, ta la a faixa cinza (em vez do branco) e a letra da cor desejada ....
@00,00 Say Replicate(Chr(219),80) Color "w+/b"
AK SO PRA VER COMO FICA:
@10,10 say "TESTE DE LETRA COM FUNDO BRANCO !!"
@00,00 Say Replicate(Chr(219),80) Color "w+/b"
AK SO PRA VER COMO FICA:
@10,10 say "TESTE DE LETRA COM FUNDO BRANCO !!"
-
EduardoSPno
- Usuário Nível 2

- Mensagens: 59
- Registrado em: 03 Mai 2012 16:23
- Localização: Sao Paulo/SP
Cores de tela de fundo - Branco e amarelo intensos
HEHE, Falha minha ak galera, se utilizar o SETBLINK( .F. ) o fundo fica legal, assim da pra utilizar o branco sem problemas no fundo das letras, o unico probleminha é q nao sera mais possivel exibir uma mensagem piscando "*", sendo q o mesmo no SETBLINK exibe o branco, e nao o piscante ....
Agradeco muito a atencao de todos, um CLIP ABRACO !!!
Aproveitando, alguem ja conseguiu rodar a biblioteca VL2_52.LIB no WIN7???, a tela fica toda desconfigurada ...
Valeu galera ....
Agradeco muito a atencao de todos, um CLIP ABRACO !!!
Aproveitando, alguem ja conseguiu rodar a biblioteca VL2_52.LIB no WIN7???, a tela fica toda desconfigurada ...
Valeu galera ....
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Cores de tela de fundo - Branco e amarelo intensos
Olá!
Uma opção para exibir uma mensagem piscando seria habilitar o SetBlink( .T. ), exibir a mensagem e desabilitar SetBlink( .F. ).
Uma opção para exibir uma mensagem piscando seria habilitar o SetBlink( .T. ), exibir a mensagem e desabilitar SetBlink( .F. ).
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Cores de tela de fundo - Branco e amarelo intensos
Bom não creio nesse caso que as cores continuem funcionando (iriam retornar as cores não desejadas) e sendo em Clipper no XP o piscar não funciona ao menos em modo janelado.alxsts escreveu:Uma opção para exibir uma mensagem piscando seria habilitar o SetBlink( .T. ), exibir a mensagem e desabilitar SetBlink( .F. ).
Para não quebrar a idéia do que foi indicado e dependendo de que forma quer mostrar as mesnagens de piscar, teria outra forma:
Código: Selecionar todos
SetBlink( .F. )
SetMode(25,80)
SetColor( "B+/W*" )
cls
BoxShadow(05,10,18,50)
SetColor("gr+/n")
@ 05,10 To 18,50
SetColor("n/gr*")
@ 06,11 Clear To 17,49
@ 24,00 Say PadC("Pressione <Esc> para sair...",80) Color "N/W"
SetCursor(0)
nKey:=0
Do While nKey=0
nKey:=Inkey(0.3)
@ 10,20 Say "Texto piscando..." Color "bg+/b"
nKey:=Inkey(0.3)
@ 10,20 Say " " Color "gr/gr*"
Enddo
FUNCTION BoxShadow( _Li, _Ci, _Lf, _Cf )
LOCAL Tela1, Tela2, Tela3, Tela4
Tela3 := SaveScreen(_Li + 1, _Cf + 1, _Lf + 1, _Cf + 1)
Tela4 := SaveScreen(_Lf + 1, _Ci + 1, _Lf + 1, _Cf + 1)
For Tela1:= 2 to Len(Tela3) step 2
Tela2:= shadow(Asc(Substr(Tela3,Tela1,1)))
Tela3:= Stuff(Tela3,Tela1,1,Tela2)
End
For Tela1:= 2 to Len(Tela4) step 2
Tela2:= shadow(Asc(Substr(Tela4, Tela1,1)))
Tela4:= Stuff(Tela4,Tela1,1,Tela2)
End
RestScreen(_Li + 1, _Cf + 1, _Lf + 1, _Cf + 1, Tela3)
RestScreen(_Lf + 1, _Ci + 1, _Lf + 1, _Cf + 1, Tela4)
Return NIL
STATIC FUNCTION Shadow(_Car)
Local Var1, Var2, Var3
Var1:= _Car % 16
Var2:= (_Car - Var1) / 16
Var3:= {0, 0, 8, 8, 0, 8, 0, 8, 0, 1, 2, 3, 4, 5, 6, 7}
Var1:= Var3[Var1 + 1]
Var2:= Var3[Var2 + 1]
RETURN Chr(16 * Var2 + Var1)Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Cores de tela de fundo - Branco e amarelo intensos
Olá!
Pensei nisso hahaha mas achei muita POG. Afinal nem gosto de mensagens piscando, prefiro um Alert(), não esquecendo que esta função tem um terceiro parâmetro para configurar a cor desejada.
Pensei nisso hahaha mas achei muita POG. Afinal nem gosto de mensagens piscando, prefiro um Alert(), não esquecendo que esta função tem um terceiro parâmetro para configurar a cor desejada.
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Cores de tela de fundo - Branco e amarelo intensos
Aproveitando o post.
Ao modificar as cores padrão percebi o seguinte:
Usando número ao invés de letras o resultado é certo.
Tipo... W+ equivale a cor 15.
SetColor("0/15")
SetColor("N/W+")
Por letra, o + não tem efeito na cor de fundo.
Ao modificar as cores padrão percebi o seguinte:
Usando número ao invés de letras o resultado é certo.
Tipo... W+ equivale a cor 15.
SetColor("0/15")
SetColor("N/W+")
Por letra, o + não tem efeito na cor de fundo.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/