Problemas con los Controles
Posted: Sun Aug 05, 2007 12:01 am
by cuatecatl82
Estimados Colegas del Foro:
Estoy revisando los toque finales de mi Sistema y me encontre con un pequeño problema
:
Resulta que si lo ejecuto con WinXP con los temas "Luna XP" que tiene por defecto trabaja bien y los controles se ven perfectamente
, pero si por alguna razon deshabilito los temas y aplico la Apariencia "Clásica de Windows", o si se ejecuta el programa en Windows 2000
los controles GET no se visualizan
Les dejo las Imagenes pa que le hechen un vistazo:
Aqui se visualiza bien:
http://img224.imageshack.us/img224/5990/imagen3mn6.jpg
Aqui ya no se ven los Gets:
http://img247.imageshack.us/img247/209/imagen6mg6.jpg
Tengo todos los controles gets definidos, así como las variables que las contienen.
Creo que puede ser problema del Archivo "WindowsXP.Manifest", de hecho lo tengo renombrado a: "XPVISTA.MAN", no creo que tenga algo que ver el nombre del Archivo.
De antemano agradesco sus sugerencias y soluciones...
I.S.C. Víctor Daniel Cuatécatl León
Muy pronto mi sitio web:
www.sisa.unlugar.com
Posted: Sun Aug 05, 2007 12:12 am
by Antonio Linares
Victor,
En el recurso, situa los grupos antes de los Gets.
Posted: Tue Aug 07, 2007 4:50 pm
by cuatecatl82
Saludos Maestro Antinio Linares..
Le comento que ya realize su sugerencia y sigo con el mismo problema, le dejo aki el código fuente con el que capturo los datos presentados en las imagenes..
//----------------------------------------------------------
FUNCTION NProd(cAlias, lAlta, oLbx)
LOCAL oDlgP, oCbx, oBmp, oBtng1, oBtng2, cCod, oSay, oBtn1, oBtn2, oCursor, lReg:=.F.
LOCAL oGet1,oGet2,oGet4,oGet5,oGet6,oGet7,oGet8,oGet9,oGet10,oGet11,oGet12,oGet13
LOCAL aUnidad := { "PIEZA", "JUEGO", "LITRO", "METRO", "KILO", "GRAMOS" }
LOCAL cTitulo := IF( lAlta == .T., "Alta a un Nuevo Producto", "Modificar datos del Producto" )
LOCAL lSalida := .F.
LOCAL lSalva := .F.
LOCAL nVieCost := 0
LOCAL nRegis := 0
LOCAL aDat[15]
LOCAL aFami
LOCAL aProv
DBUSEAREA(.T.,oApp:cDriver,".\PROVEDOR.DBF","BPROV",.T.,.F.)
DBSETINDEX(".\PROVEDOR.CDX")
BPROV->(ORDSETFOCUS(2))
BPROV:= ALIAS()
BPROV->(DBGOTOP())
nRegis:= (BPROV)->(LASTREC())
aProv:= ARRAY(nRegis)
FOR N:= 1 TO nRegis
aProv[N]:= BPROV->(FIELDGET(3))
BPROV->(DBSKIP())
NEXT
DBSELECTAREA("BPROV")
DBCLOSEAREA("BPROV")
nRegis := 0
DBUSEAREA(.T.,oApp:cDriver,".\FAMILIAS.DBF","BFAM",.T.,.F.)
DBSETINDEX(".\FAMILIAS.CDX")
BFAM->(ORDSETFOCUS(2))
BFAM:= ALIAS()
BFAM->(DBGOTOP())
nRegis:= (BFAM)->(LASTREC())
aFami:= ARRAY(nRegis)
FOR N:= 1 TO nRegis
aFami[N]:= BFAM->(FIELDGET(2))
BFAM->(DBSKIP())
NEXT
DBSELECTAREA("BFAM")
DBCLOSEAREA("BFAM")
IF lAlta .OR. (!lAlta .AND. !(cAlias)->(EOF()))
nRecNo:= (cAlias)->(RECNO())
nInd:= (cAlias)->(INDEXORD())
IF lAlta
SONIDOS("NUEVO")
(cAlias)->(DBSETORDER(1))
(cAlias)->(DBGOBOTTOM())
(cAlias)->(DBGOTO(nRecNo))
aDat[ 1]:= SPACE(15)
aDat[ 2]:= SPACE(50)
aDat[ 3]:= SPACE(05)
aDat[ 4]:= SPACE(23)
aDat[ 5]:= SPACE(60)
dAltaPro:= DATE()
aDat[ 6]:= 0
aDat[ 7]:= 0
aDat[ 8]:= 0
aDat[ 9]:= 0
aDat[10]:= 0
aDat[11]:= 0
aDat[12]:= 0
aDat[13]:= 0
aDat[14]:= 0
ELSE
SONIDOS("MODIFICAR")
aDat[ 1]:= (cAlias)->Codigo
aDat[ 2]:= (cAlias)->Descripcio
aDat[ 3]:= (cAlias)->Unidad
aDat[ 4]:= (cAlias)->Familia
aDat[ 5]:= (cAlias)->Provedor
dAltaPro:= DATE()
aDat[ 6]:= (cAlias)->Costo
aDat[ 7]:= (cAlias)->Normal
aDat[ 8]:= (cAlias)->Enganche
aDat[ 9]:= (cAlias)->Pagos
aDat[10]:= (cAlias)->Importe
aDat[11]:= (cAlias)->Credito
aDat[12]:= (cAlias)->Contado
aDat[13]:= (cAlias)->Especial
aDat[14]:= (cAlias)->Oferta
nVieCost:= (cAlias)->Costo
ENDIF
DEFINE CURSOR oCursor RESOURCE "MANO"
DEFINE DIALOG oDlgP RESOURCE "Producto" TITLE cTitulo FONT oApp:cFuente
REDEFINE IMAGE oBmp ID 900 FILENAME ".\DATOS\IMAINVEN.JPG" OF oDlgP
REDEFINE GET oGet1 VAR aDat[ 1] ID 1001 OF oDlgP UPDATE PICTURE "@!" VALID ( SYSREFRESH(), cCod:= aDat[ 1], CheckaCodi(oGet1,@cCod,cAlias,oDlgP,lSalida))
REDEFINE GET oGet2 VAR aDat[ 2] ID 1002 OF oDlgP UPDATE PICTURE "@!" VALID CampoVacio(aDat[ 2])
REDEFINE COMBOBOX oCbx VAR aDat[ 3] ID 1012 OF oDlgP ITEMS aUnidad VALID CampoVacio(aDat[ 3])
REDEFINE COMBOBOX oBtng1 VAR aDat[ 4] ID 1016 OF oDlgP ITEMS aFami VALID CampoVacio(aDat[ 4])
REDEFINE COMBOBOX oBtng2 VAR aDat[ 5] ID 403 OF oDlgP ITEMS aProv VALID CampoVacio(aDat[ 5])
REDEFINE GET oGet4 VAR aDat[ 6] ID 101 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE
REDEFINE GET oGet5 VAR aDat[ 7] ID 102 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE
REDEFINE GET oGet7 VAR aDat[ 8] ID 104 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE
REDEFINE GET oGet8 VAR aDat[ 9] ID 105 OF oDlgP PICTURE "999" UPDATE
REDEFINE GET oGet9 VAR aDat[10] ID 106 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE VALID (aDat[11]:= (aDat[9] * aDat[10]) + aDat[8], oGet10:Refresh(),.T.)
REDEFINE GET oGet10 VAR aDat[11] ID 107 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE READONLY COLOR Rgb(000,000,000), Rgb(255,233,214)
REDEFINE GET oGet11 VAR aDat[12] ID 108 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE
REDEFINE GET oGet12 VAR aDat[13] ID 109 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE
REDEFINE GET oGet13 VAR aDat[14] ID 110 OF oDlgP PICTURE "$9,999,999,999.99" UPDATE
REDEFINE BUTTON oBtn1 ID 400 OF oDlgP ACTION (lSalva := .T., lReg:=.T., lSalida:=.T., oDlgP:END())
REDEFINE BUTTON oBtn2 ID 401 OF oDlgP ACTION (lSalva := .F., lReg:=.F., lSalida:=.T., oDlgP:END()) CANCEL
REDEFINE SAY oSay ID 10 OF oDlgP
REDEFINE SAY oSay ID 11 OF oDlgP
REDEFINE SAY oSay ID 12 OF oDlgP
REDEFINE SAY oSay ID 13 OF oDlgP
REDEFINE SAY oSay ID 14 OF oDlgP
REDEFINE SAY oSay ID 15 OF oDlgP
REDEFINE SAY oSay ID 16 OF oDlgP
REDEFINE SAY oSay ID 17 OF oDlgP
REDEFINE SAY oSay ID 18 OF oDlgP
IF lAlta == .F.
oGet1:Disable()
ENDIF
oDlgP:lHelpIcon:= .F.
oBtn1:oCursor:= oCursor
oBtn2:oCursor:= oCursor
oBtn1:cToolTip := "Salir y Salvar Datos"
oBtn2:cToolTip := "Salir sin Salvar Datos"
ACTIVATE DIALOG oDlgP CENTER ON INIT(oDlgP:SetIcon(oApp:cIcono)) VALID (lSalida)
IF lSalva
IF lReg
IF lAlta
(cAlias)->(DBGOBOTTOM())
(cAlias)->(DBAPPEND())
(cAlias)->(RLOCK())
(cAlias)->Ultima:= DATE()
ENDIF
(cAlias)->(RLOCK())
(cAlias)->Ultima:= DATE()
(cAlias)->Codigo:= aDat[ 1]
(cAlias)->Descripcio:= aDat[ 2]
(cAlias)->Unidad:= aDat[ 3]
(cAlias)->Familia:= aDat[ 4]
(cAlias)->Provedor:= aDat[ 5]
(cAlias)->Costo:= aDat[ 6]
(cAlias)->Normal:= aDat[ 7]
(cAlias)->Enganche:= aDat[ 8]
(cAlias)->Pagos:= aDat[ 9]
(cAlias)->Importe:= aDat[10]
(cAlias)->Credito:= aDat[11]
(cAlias)->Contado:= aDat[12]
(cAlias)->Especial:= aDat[13]
(cAlias)->Oferta:= aDat[14]
(cAlias)->Modific:= ALLTRIM(UPPER(oApp:cUsuario[nItem]))
(cAlias)->Hora := TransAMPM()
(cAlias)->(DBCOMMIT())
(cAlias)->(DBUNLOCK())
ELSE
(cAlias)->(DBGOTO(oApp:nRec))
ENDIF
(cAlias)->(ORDSETFOCUS(nInd))
oLbx:Refresh()
oLbx:SetFocus()
ELSE
SYSREFRESH()
ENDIF
ENDIF
RETURN( NIL )
Como podfra ver, es un sencillo dialogo para captura de productos, de hecho así es como tengo definidos todos los demás dialogos y solo en este he detectado este problema..
Saludos..
Posted: Tue Aug 07, 2007 5:48 pm
by El Loco
Victor, a lo que se refiere Antonio es el orden de los controles dentro del archivo de recursos *.rc
Un abrazo. El Loco =>))
Posted: Tue Aug 07, 2007 8:08 pm
by Antonio Linares
Asi es