Radiobutton e checkbox transparent.

Post Reply
kbelo
Posts: 34
Joined: Thu Jun 22, 2006 2:33 pm
Location: Criciuma-SC Brasil
Contact:

Radiobutton e checkbox transparent.

Post by kbelo »

Buonas díaz.
Hice una ventana con profundamente ella degrado y quisiera todos los
controles era transparente.
Coloqué ja en el transparente en la definición del diálogo pero mi
Radiobuttons y nao del checkbox son transparentes el color de
profundamente son el color de Windows.
¿Alguem podía ayudarme?

Deudor

Esta frase era passade en un traductor perdona los errores.
Marcelo Michels Alexandre
xHarbour 1.1 + Ws + Xmate + FW8.01 + BCC 5.82
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Post by karinha »

Marcelo, tens como mostrar uma Imagem?

Ficou dificil a tradução. Terrivel este tradutor que usastes, en google, tem tradutores excelentes de Portugues a Espanhol. Abraços.
João Santos - São Paulo - Brasil
kbelo
Posts: 34
Joined: Thu Jun 22, 2006 2:33 pm
Location: Criciuma-SC Brasil
Contact:

Post by kbelo »

Image

Veja João como esta ficando.
Coloquei este degrade pra testes mesmo com o transparent na janela fica assim.
Nos Says resolveu fica tudo transparente mesmo nao sendo definido na dll com recursos.
Marcelo Michels Alexandre
xHarbour 1.1 + Ws + Xmate + FW8.01 + BCC 5.82
User avatar
Taiwan
Posts: 218
Joined: Fri Oct 07, 2005 1:55 am
Location: Taipei, Taiwan
Contact:

Post by Taiwan »

kbelo wrote:Image

Veja João como esta ficando.
Coloquei este degrade pra testes mesmo com o transparent na janela fica assim.
Nos Says resolveu fica tudo transparente mesmo nao sendo definido na dll com recursos.
Hello

You can upgrade to new FWH version. New version support it.

DEFINE DIALOG RESOURCE "XXX" transparent

Regards,

Richard
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

kbelo,

Has redefinido todos los radiobuttons y checkboxes desde tu PRG ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
kbelo
Posts: 34
Joined: Thu Jun 22, 2006 2:33 pm
Location: Criciuma-SC Brasil
Contact:

Post by kbelo »

Uso esta versão não é necessario atualização.
fw 2.8 e xharbour 0.99.71
E esta sim tudo definido no meu prg todoso os radio e checkbox e minha dialog ja tem este Transparent como ja citei acima.
Marcelo Michels Alexandre
xHarbour 1.1 + Ws + Xmate + FW8.01 + BCC 5.82
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Marcelo,

Si quieres publica el PRG de ese diálogo y su RC y el brush usado y lo probamos aqui para que veas el resultado con FWH 7.04
regards, saludos

Antonio Linares
www.fivetechsoft.com
kbelo
Posts: 34
Joined: Thu Jun 22, 2006 2:33 pm
Location: Criciuma-SC Brasil
Contact:

Post by kbelo »

Code: Select all

DEFINE DIALOG oDlgOrdem RESOURCE "CFGORDEM" icon Load_Obj(1) Font Load_Obj(2) transparent
REDEFINE RADIO    onOpc      VAR nOpc      ID 101,102,103 OF oDlgOrdem ;
               ON CHANGE Habilita()

REDEFINE CHECKBOX owEtapacor VAR wEtapacor ID 104 OF oDlgOrdem	when nopc==1 
REDEFINE CHECKBOX owCombicor VAR wCombicor ID 105 OF oDlgOrdem	when nopc==1 
REDEFINE CHECKBOX owObsercor VAR wObsercor ID 106 OF oDlgOrdem	when nopc==1 
REDEFINE CHECKBOX owengencor VAR wengencor ID 107 OF oDlgOrdem	when nopc==1 
REDEFINE RADIO    owMaterrea VAR wMatercor ID 108,109,110 OF oDlgOrdem when nopc==1 
REDEFINE CHECKBOX owEtapaRea VAR wEtapaRea ID 111 OF oDlgOrdem	when nopc==2 
REDEFINE CHECKBOX owCombiRea VAR wCombiRea ID 112 OF oDlgOrdem	when nopc==2 
REDEFINE CHECKBOX owObserRea VAR wObserRea ID 113 OF oDlgOrdem	when nopc==2 
REDEFINE CHECKBOX owengenRea VAR wengenRea ID 114 OF oDlgOrdem	when nopc==2 
REDEFINE RADIO    owMaterRea Var wMaterrea ID 115,116,117 OF oDlgOrdem when nopc==2 
REDEFINE CHECKBOX owEtapaSer VAR wEtapaSer ID 118 OF oDlgOrdem when nopc==3 
REDEFINE CHECKBOX owCombiSer VAR wCombiSer ID 119 OF oDlgOrdem	when nopc==3 
REDEFINE CHECKBOX owObserSer VAR wObserSer ID 120 OF oDlgOrdem	when nopc==3 
REDEFINE CHECKBOX owengenSer VAR wengenSer ID 121 OF oDlgOrdem	when nopc==3 
REDEFINE RADIO    owMaterSer Var wMaterSer ID 122,123,124 OF oDlgOrdem when nopc==3 

REDEFINE BUTTON Obtok  ID 125 ACTION( Grava(),oDlgOrdem:End()  )
REDEFINE BUTTON obtcan ID 126 ACTION (oDlgOrdem:End ( )) CANCEL

ACTIVATE DIALOG oDlgOrdem CENTER on init sysrefresh()  
Eu uso tambem esta função para fazer o degrade no onpaint()

Code: Select all

*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
FUNCTION Textura(oDlgTxt) 
*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=
LOCAL hWnd:=oDlgTxt:hWnd
LOCAL aRec:=GetClientRect(hWnd)
LOCAL oBrush,nX,nStp:=(aRec[3]-aRec[1])/2
LOCAL nColor1:=rgb(245,245,245),nColor2:=rgb(215,215,215)
LOCAL nColorR1:=nRgbRed(nColor1),nColorG1:=nRgbGreen(nColor1),nColorB1:=nRgbBlue(nColor1)
LOCAL nColorR2:=nRgbRed(nColor2),nColorG2:=nRgbGreen(nColor2),nColorB2:=nRgbBlue(nColor2)
LOCAL nSomaR:=ABS(nColorR2-nColorR1),nSomaG:=ABS(nColorG2-nColorG1),nSomaB:=ABS(nColorB2-nColorB1)
nSomaR:=IIF(nSomaR<0,0,(nSomaR/((aRec[3])/2)))
nSomaG:=IIF(nSomaG<0,0,(nSomaG/((aRec[3])/2)))
nSomaB:=IIF(nSomaB<0,0,(nSomaB/((aRec[3])/2)))
oDlgTxt:GetDC()
aRec[3]:=0
FOR nX:=1 TO nStp  
   aRec[3]+=2  
   DEFINE BRUSH oBrush COLOR nRgb(nColorR1,nColorG1,nColorB1) 
   FillRect(oDlgTxt:hDC,aRec,oBrush:hBrush)  
   RELEASE BRUSH oBrush   
   aRec[1]+=2
   nColorR1:=IIF(nColorR2>=nColorR1,nColorR1+nSomaR,nColorR1-nSomaR)   
   nColorG1:=IIF(nColorG2>=nColorG1,nColorG1+nSomaG,nColorG1-nSomaG)   
   nColorB1:=IIF(nColorB2>=nColorB1,nColorB1+nSomaB,nColorB1-nSomaB)
NEXT
oDlgTxt:ReleaseDC()
   
RETURN(NIL) 
Marcelo Michels Alexandre
xHarbour 1.1 + Ws + Xmate + FW8.01 + BCC 5.82
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Marcelo,

No uses Textura(oDlgTxt).

Crea un bitmap vertical con esos colores y crea un brush con él:

DEFINE BRUSH oBrush FILENAME "MyColors.bmp"

DEFINE DIALOG oDlg BRUSH oBrush TRANSPARENT
regards, saludos

Antonio Linares
www.fivetechsoft.com
kbelo
Posts: 34
Joined: Thu Jun 22, 2006 2:33 pm
Location: Criciuma-SC Brasil
Contact:

Post by kbelo »

Continua a mesma coisa

DEFINE BRUSH oBrush FILENAME "teste.bmp"
DEFINE DIALOG oDlgOrdem BRUSH oBrush TRANSPARENT RESOURCE "CFGORDEM" icon Load_Obj(1) Font Load_Obj(2)
Marcelo Michels Alexandre
xHarbour 1.1 + Ws + Xmate + FW8.01 + BCC 5.82
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Marcelo,

Publica aqui el RC de ese diálogo y lo construimos aqui con FWH 7.04 para que veas el resultado, gracias
regards, saludos

Antonio Linares
www.fivetechsoft.com
kbelo
Posts: 34
Joined: Thu Jun 22, 2006 2:33 pm
Location: Criciuma-SC Brasil
Contact:

Post by kbelo »

Marcelo Michels Alexandre
xHarbour 1.1 + Ws + Xmate + FW8.01 + BCC 5.82
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Post by Raymundo Islas M. »

Antonio :

Quisiera entender por lo que comentas, que el uso del BitMap es la mas correcta para aplicar algun degrado de colores a las aplicaciones, si este es el caso :

- El BitMap que dimensiones debera tener ?
- Todos los controles automaticamente asumiran el fondo ?
- Hay algun cuidado a tener para aplicar algun degrado ?

Lo pregunto, por que muero por ponerle degrados a un par de aplicaciones, y usando algunas funciones que han aportado algunos colegas de una u otra forma han surgido "problemas" :

- Pantallas que "parpadean"
- Controles que no toman el fondo
- Controles que no aparecen
- etc.


Saludos
FWH 10.6 + xHarbour + Borland 582
Ruben Fernandez
Posts: 366
Joined: Wed Aug 30, 2006 5:25 pm
Location: Uruguay

Post by Ruben Fernandez »

Raymundo:

No soy Antonio, pero voy a decirte como lo hago y no tengo problemas.
Hago un bmp de 2 pixeles x 200 pixeles o de 200 pixeles x 2, con el Paint Shop Pro. El tamaño te cambia el degradado, horizontal o vertical.

El largo o el ancho del bmp debe ser igual o mayor al dialogo en el que lo vas a usar para que se vea bien.

Lo guardo como BMP, lo agrego a mi archivo .RC o .RES y luego desde
codigo:
Define Brush oBrush Resource "nombre_del_ bmp" (sin extension).
Define Dialog oDlg Resource "Ing_Cli" Font oFont BRUSH oBrush Transparent

Despues los say en el archivo rc o res los defino con el ID -1
Los demas controles como se hace normalmente y listo.

No olvides al salir de ese dialogo hacer un oBrush:End()
Otra cosa a tener en cuenta: muchos bmps incrementan bastante el tramaño de tu archivo de recursos.

Saludos

Ruben Fernandez.
User avatar
Raymundo Islas M.
Posts: 590
Joined: Tue Mar 14, 2006 11:34 pm
Location: Acapulco, Gro. MEXICO

Post by Raymundo Islas M. »

Hola Ruben

Muchas gracias por tu aportacion, voy a probarlo de la manera que me indicas.

Saludos
FWH 10.6 + xHarbour + Borland 582
Post Reply