Transparencias

JoseLuis
Posts: 359
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Transparencias

Post by JoseLuis »

Hola amigos

Dos cuestiones:

Primera pregunta:

A fin de no utilizar clases ajenas en éste tema (vengo utilizando ssay), he leido que para hacer transparentes says de un dialogo primero hay que hacer DEFINE Brush oBrush, luego cuando se define el dialogo hay que poner TRANSPARENT oBrush, y ya todos los says son transparentes.
Bueno pues a mi me funciona a medias. Efectivamente son transparentes pero no con el fondo que le tocaría en ese momento sino con el fondo de otra parte de la pantalla. No me explico?
Os pongo una imagen

http://img182.imageshack.us/my.php?image=emprejy6.png

Segunda pregunta:

Quiero utilizar para editar recursos pellesc, pero cuando abro un .RC, me lo presenta en modo texto y no se como ponerlo en visualización como Worshop para ver dialogos, bmps, etc.

Una ayuda en los dos temas plis.

Saludos

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

Post by Antonio Linares »

Jose Luis,

En source\classes\control.prg método Colors() tienes un ejemplo de como hay que llamar a SetBrushOrgEx() y a FillRect() para rellenar el fondo correctamente.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

José Luis:

Para usar PelleC, lo más prudente es que te olvides de los ficheros .RC y te enfoques a trabajar con los ficheros .RES, PellesC se comporta EXCELENTE con este tipo de ficheros y sin problemas, ah y olvidate de reusar WS.

Desde luego debes incluir el fichero .RES en tu aplicación en lugar de los ficheros .RC

Saludos, Armando
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
JoseLuis
Posts: 359
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Post by JoseLuis »

Gracias Armando, así lo haré

Referente a los says transparentes, he visto que sí, que se hacen transparentes cuando en lugar de utilizar el bmp desde resources, lo utilizo desde File, aunque solo los say, si utilizo Group o algún otro tipo no.

Saludos

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

Post by Antonio Linares »

Jose Luis,

Los GROUPs tienes que redefinirlos para que se vean transparentes tambien.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

José Luis:

Intenta asignando -1 (1 negativo) como NAME o ID de los SAY y GROUP PellesC te lo cambiará a (UNUSED)

Saludos, Armando
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
JoseLuis
Posts: 359
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Post by JoseLuis »

Esto ya lo dejo por imposible. no soy capaz de hacer transparente el group box, ni declarándolo ni ponendolo como -1

Saludos

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

Post by Antonio Linares »

Jose Luis,

Revisa samples\TestFldB.prg

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
JoseLuis
Posts: 359
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Post by JoseLuis »

Pues... a mi que me lo expliquen.

Los grupos son "Datos" y "Datos Bancarios"

Si no declaro Group se ve así

http://img113.imageshack.us/my.php?imag ... arahf2.jpg

Si declaro Group se ve así

http://img372.imageshack.us/my.php?imag ... adaci2.jpg

O nos pasamos o no llegamos.

El código es simple:

****************************
#include "FiveWin.ch"
#include "btnget.ch"
#include "tsbutton.ch"
//#include "Ssay.ch"
#define COLOR_BTNFACE 15

//-----------------------------------------

memvar publicas
FUNCTION Empresa()

local oDlg,oDlg1
local vuelta,osay,i,oboton,oboton1
local nccodmun,ncnommun,nccodprov,ncnomprov
local hacer:=0,oculta,oculta1,oculta2,oculta3,oculta4,oculta5
local oNombre,oLbx,obmp
local Grabar:=.F.
SET _3DLOOK ON
dbUseArea(.T.,,Publicas:cUnidad+"\MUNICI",,.T.)
munici->(ordSetfocus("ccodmun"))

dbUseArea(.T.,,Publicas:cUnidad+"\PROVIN",,.T.)
provin->(ordSetfocus("ncodprov"))


dbUseArea(.T.,,Publicas:cUnidad+"\PROPIE",,.T.)
propie->(Ordsetfocus("Codigo"))
propie->(Dbgotop())
Database Publicas:oDbfprop
nccodmun:=Publicas:oDbfprop:codpobla
DEFINE BRUSH Publicas:oBrush RESOURCE "Nubes"
DEFINE DIALOG oDlg1 RESOURCE "BRWGENERI1" BRUSH Publicas:oBrush TRANSPARENT
REDEFINE BtnBMP RESOURCE "PBMPADD1","PBMPADD2","PBMPADD3" ID 172 OF oDlg1 MESSAGE "Añadir" ACTION (Publicas:cTitulo:="Creación de nuevas Empresas ",;
Hacer:=1,oDlg1:End());
WHEN Publicas:cAccesoA;
TOOLTIP "Añadir"
REDEFINE BtnBMP RESOURCE "PBMPMOD1","PBMPMOD2","PBMPMOD3" ID 173 OF oDlg1 MESSAGE "Modificar" ACTION (Publicas:cTitulo:="Modificación de Empresas ",hacer:=2,oDlg1:End());
WHEN Publicas:cAccesoM;
TOOLTIP "Modificar"
REDEFINE BtnBMP RESOURCE "PBMPDEL1","PBMPDEL2","PBMPDEL3" ID 174 OF oDlg1 MESSAGE "Eliminar" ACTION (iif(!Propie->(eof()),(borraem(Publicas:oWPpal),oLbx:UpStable(),oLbx:Refresh()),.T.));
WHEN Publicas:cAccesoA;
TOOLTIP "Eliminar"
REDEFINE BtnBMP RESOURCE "PBMPEND1","PBMPEND2","PBMPEND3" ID 178 OF oDlg1 MESSAGE "Salir" ACTION oDlg1:END();
TOOLTIP "Salir"
REDEFINE Btnbmp oculta ID 175 OF oDlg1
REDEFINE Btnbmp oculta1 ID 176 OF oDlg1
REDEFINE Btnbmp oculta2 ID 177 OF oDlg1
REDEFINE Btnbmp oculta3 ID 179 OF oDlg1
REDEFINE Btnbmp oculta4 ID 180 OF oDlg1
REDEFINE Btnbmp oculta5 ID 181 OF oDlg1
REDEFINE LISTBOX oLbx FIELDS Propie->Codigo,;
Propie->Nombre;
HEADER "Cód","Empresa";
FIELDSIZES 30,200;
ALIAS "PROPIE";
COLOR CLR_BLACK, GetSysColor( COLOR_BTNFACE ) ;
ID 110 OF oDlg
oLbx:nClrPane:={||iIF((oLbx:cAlias)->(OrdKeyNo())%2==0,nRGB(245,219,175),nRGB(245,239,191))}
oLbx:aJustify := {.F.,.F.}
ACTIVATE DIALOG Odlg1 CENTERED ON INIT (oculta:Hide(),oculta1:Hide(),oculta2:Hide(),oculta3:Hide(),oculta4:Hide(),oculta5:Hide())
do case
case hacer=1
Publicas:oDbfprop:Blank()
case hacer=2
Publicas:oDbfprop:Load()
end case
if hacer<>0
DEFINE DIALOG oDlg RESOURCE "Empresas" BRUSH Publicas:oBrush TRANSPARENT
// REDEFINE GROUP ID 48 of oDlg
for i = 1 to 16
REDEFINE SAY ID i OF oDlg
next i
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Codigo ID 101 OF oDlg
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Nombre ID 102 OF oDlg Picture "@!"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Domicilio ID 103 OF oDlg
REDEFINE BTNGET oNombre VAR nccodmun ID 104 OF oDlg Update Picture "XXXXX";
Valid ((nccodmun:= Padl(alltrim(nccodmun),5,"0"),oDlg:Update()),;
IIf (!munici->(dbSeek(nccodmun)) .OR. nccodmun='00000',;
(Locmun(@oDlg,@nccodmun,@ncnommun),oDlg:Update(),.F.),;
(Publicas:oDbfprop:Poblacion:= munici->cnommun,;
Publicas:oDbfprop:codpobla:=munici->ccodmun,;
provin->(dbseek(substr(nccodmun,1,2))),;
Publicas:oDbfprop:codprovin:=provin->ncodprov,;
Publicas:oDbfprop:codpos:=provin->ncodprov+"000",;
Publicas:oDbfprop:Provin:=provin->cnomprov,oDlg:Update(),.T. )))
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Poblacion ID 105 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:codprovin ID 106 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Provin ID 107 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Nif ID 108 OF oDlg
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:codpos ID 109 OF oDlg Update picture "XXXXX"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Telefono ID 110 OF oDlg picture "XXXXXXXXX"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Fax ID 116 OF oDlg picture "XXXXXXXXX"
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Email ID 117 OF oDlg picture "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
//REDEFINE GROUP ID 49 of oDlg
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Banco ID 111 OF oDlg Update
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:Entidad ID 112 OF oDlg Update picture '@X'
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:agencia ID 113 OF oDlg Update picture '@X'
REDEFINE BTNGET oNombre VAR Publicas:oDbfprop:dc ID 114 OF oDlg Update NO MODIFY
REDEFINE BTNGET oNombre var Publicas:oDbfprop:cuenta ID 115 OF oDlg update picture '@X' ;
valid eval({|| vuelta := cdc(Publicas:oDbfprop:entidad+Publicas:oDbfprop:agencia,Publicas:oDbfprop:cuenta),Publicas:oDbfprop:dc := vuelta,odlg:Update(),.T.})
REDEFINE BITMAP oBmp RESOURCE "Lupin" ID 200 OF oDlg ADJUST;
ON LEFT CLICK ( Locmun(@oDlg,@nccodmun,@ncnommun),oDlg:Update())
REDEFINE SBUTTON oboton ID 550 OF oDlg RESOURCE "Lamp1", "Lamp2",, "Lamp3", 'shape3' SHAPE PROMPT "Aceptar" TEXT ON_RIGHT ;
ACTION (Grabar := .T., oDlg:End())
REDEFINE SBUTTON oboton1 ID 551 OF oDlg RESOURCE "Lampr1", "Lampr2",, "Lampr1", 'shape3' SHAPE PROMPT "Cancelar" TEXT ON_RIGHT ;
ACTION (Grabar := .F., oDlg:End())
ACTIVATE DIALOG oDlg CENTERED

IF Grabar
While .not. propie->(Rlock()); end
Publicas:oDbfprop:Save()
Propie->(dbUnlock())
ENDIF
endif
PROPIE->(dbCloseArea() )
MUNICI->(dbCloseArea() )
PROVIN->(dbCloseArea() )
RETURN NIL

***********************

Saludos

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

Post by Antonio Linares »

Jose Luis,

Puedes mostrarnos el RC de ese diálogo ? gracias,
regards, saludos

Antonio Linares
www.fivetechsoft.com
JoseLuis
Posts: 359
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Post by JoseLuis »

Aquí está
**********************************

EMPRESAS DIALOG 34, 98, 272, 197
STYLE DS_MODALFRAME | 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Tratamiento de Empresas"
FONT 8, "MS Sans Serif"
{
EDITTEXT 101, 58, 20, 25, 12
EDITTEXT 108, 210, 18, 42, 12
EDITTEXT 102, 58, 34, 197, 12
EDITTEXT 103, 58, 50, 197, 12
EDITTEXT 104, 69, 63, 25, 12
EDITTEXT 105, 100, 63, 155, 12
EDITTEXT 106, 69, 76, 25, 12
EDITTEXT 107, 100, 76, 155, 12
EDITTEXT 109, 61, 90, 30, 12
EDITTEXT 110, 129, 90, 42, 12
EDITTEXT 116, 211, 90, 42, 12
EDITTEXT 117, 61, 104, 127, 12
EDITTEXT 111, 69, 129, 187, 12
EDITTEXT 112, 69, 154, 20, 12
EDITTEXT 113, 99, 154, 20, 12
EDITTEXT 115, 165, 154, 47, 12
PUSHBUTTON "Aceptar", 550, 162, 180, 50, 14
PUSHBUTTON "Cancelar", 551, 215, 180, 50, 14
LTEXT "Nombre", 3, 11, 37, 42, 8
LTEXT "Domicilio", 4, 9, 52, 44, 8
LTEXT "Poblacion", 5, 9, 66, 44, 8
LTEXT "Cif", 2, 157, 21, 44, 8
LTEXT "Provincia", 6, 9, 79, 44, 8
CONTROL "", 200, "tbitmap", WS_CHILD | WS_VISIBLE, 58, 66, 8, 8
LTEXT "Cod.Postal", 7, 11, 93, 37, 8
LTEXT "Telefono", 8, 96, 92, 32, 8
GROUPBOX "Datos Generales", 48, 6, 9, 258, 111, BS_GROUPBOX | BS_LEFTTEXT | WS_GROUP
GROUPBOX "Datos Bancarios", 49, 6, 122, 258, 50, BS_GROUPBOX | BS_LEFTTEXT | WS_GROUP
LTEXT "Banco", 11, 13, 133, 42, 8
EDITTEXT 114, 132, 154, 14, 12
LTEXT "Cuenta", 16, 13, 152, 42, 8
LTEXT "Entidad", 12, 66, 143, 28, 8
LTEXT "Agencia", 13, 96, 143, 28, 8
LTEXT "D.C.", 14, 131, 143, 15, 8
LTEXT "Cuenta", 15, 175, 143, 28, 8
LTEXT "Codigo", 1, 11, 23, 32, 8
LTEXT "Email", 10, 13, 105, 37, 8
LTEXT "Fax", 9, 186, 92, 22, 8
}
***********************************

Saludos

Jose Luis
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

José Luis:

Pues mira que he hecho una prueba y se ve muy bien

http://img247.imageshack.us/my.php?image=clip1ga0.jpg

Saludos, Armando
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
JoseLuis
Posts: 359
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Post by JoseLuis »

No se.... No se.

Es raro porque todo iba bien el five, y algo habre tocado al pasarlo a fwh.
Lo he intentado de mil maneras y algo se me escapa, miraré a ver si es el bmp del .RES, o sino revisaré todo el código en fin mañana seguiré a ver si hay mas suerte.
Gracias por todo Antonio

Jose Luis
JoseLuis
Posts: 359
Joined: Thu Oct 19, 2006 12:28 pm
Location: Toledo

Post by JoseLuis »

Vuelvo a retomar el tema

He observado que, como si declaro el group se queda opaco todo lo que hay dentro de él, si voy haciendo click con el ratón van apareciendo los get con sus valores, y los says transparentes que hay donde hago click.

Será entonces tema de refresco o algo aí?, porque he desmontado entero el prg y sigue igual. o es que las librerias que utilizo interfieren, como btnget.

Un saludo

Jose Luis
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Post by karinha »

Holá...

Usted Debes usar, BUTTON STYLE, y no RECURSOS BORLAND.

GROUP BOX.


Regards, Saludos.
João Santos - São Paulo - Brasil
Post Reply