TDockPnel sobre dialogo

TDockPnel sobre dialogo

Postby leandro » Sun Feb 07, 2021 5:25 pm

Buenas tardes para todos, de nuevo yo.

Estoy intentando colocar un TDockPnel sobre un dialogo, pero no logro el mismo resultado.
Code: Select all  Expand view

Function TestDockPnel()

local nCol
local nRow
Local nTotLargo := 0
Local cUrl := "http://forums.fivetechsupport.com/viewforum.php?f=6"
Local nAncFinal := 0
Local nAltFinal := 0

nWAncho   := Int( GetSysMetrics( 0 ) * 0.95 )

nWAlto    := Int( GetSysMetrics( 1 ) * 0.95 )
nCol      := Int( ( GetSysMetrics( 0 ) - nWAncho ) / 2 )
nRow      := Int( ( GetSysMetrics( 1 ) - nWAlto  ) / 2 )

nAltFinal := (nWAlto-20) + nRow
nAncFinal := (nWAncho) + nCol

DEFINE DIALOG oWindow FROM nRow, nCol TO nAltFinal, nAncFinal ;
PIXEL TITLE "TDockPnel sobre dialogo" ;
COLOR CLR_WHITE, Rgb( 182, 182, 182 )

    oDock1  := TDockPnel():New( oWindow )
    WITH OBJECT oDock1
        :SetHeightCaption( 30 )
        :SetCoors( { | o | 10 }, ;
        { | o | 10 }, ;
        { | o | Int( o:oWnd:nHeight  ) - 50 }, ;
        { | o | (Int( o:oWnd:nWidth / 12 )*8) - XEVal( o:nLeft, o ) } )
        :SetCaption( { | o | "Título" } )
        :SetColors( CLR_WHITE, CLR_RED , Rgb( 88, 88, 88 ), CLR_HGRAY )
        :SetFont( oFont4 )
        :lLeftImgs   := .F.
        :SetBorderSize( 4 )
        :SetCtrlsPnel( { | o, nT, nL, nH, nW, oB | oB := ShowPageWeb( o, cUrl, nT, nL, nH, nW ) }  )     
        :bRClicked   := { || MsgInfo( oDock1:oWnd:aControls[ 1 ]:ClassName() ) }
        :Activate()
    END
   
    oDock2  := TDockPnel():New( oWindow )
    WITH OBJECT oDock2
        :SetHeightCaption( 30 )
        :SetCoors( { | o | XEval( o:oWnd:aControls[ 1 ]:nTop, o ) }, ;
        { | o | XEval( o:oWnd:aControls[ 1 ]:nRight, o ) + 10 }, ;
        { | o | XEval( o:oWnd:aControls[ 1 ]:nBottom, o ) - 1 }, ;
        { | o | (Int( o:oWnd:nWidth / 12 )*4) + XEval( o:nLeft, o ) - 25 } )
        :SetCaption( { | o | "Información" } )
        :SetColors( CLR_WHITE, Rgb( 0,120,215 ) , Rgb( 88, 88, 88 ), CLR_HGRAY )
        :SetBorderSize( 4 )
        :SetFont( oFont4 )
        :lLeftImgs   := .F.
        :Activate()
    END

ACTIVATE DIALOG oWindow
 


Image
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: TDockPnel sobre dialogo

Postby cnavarro » Sun Feb 07, 2021 8:54 pm

Leandro, pasa toda la creación de DOCKS a una function independiente, y la llamas en el ON INIT del ACTIVATE DIALOG
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6501
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: TDockPnel sobre dialogo

Postby leandro » Mon Feb 08, 2021 1:54 am

Amigo muchas gracias por las respuestas, pero ahora se descuadran algunos márgenes y no logro entender como ajustarlos, y cuando hago clic sobre la casilla de usuario, sale un cuadro gris el cual no salía cuando estaba definida sobre una ventana.

También sucede que si cambio en ancho del caption, este también afecta el ancho del bottom.

Image

Code: Select all  Expand view

FUNCTION inicioprueba()
Local oDlgIc

Define Font oFont Name "Calibri" Size 0,-12 Bold
Define Font oFont1 Name "Calibri" Size 0,-13
Define Font oFont2 Name "Calibri" Size 0,-16 Bold

nWAncho   := Int( GetSysMetrics( 0 ) * 0.95 )
nWAlto    := Int( GetSysMetrics( 1 ) * 0.95 )
nCol      := Int( ( GetSysMetrics( 0 ) - nWAncho ) / 2 )
nRow      := Int( ( GetSysMetrics( 1 ) - nWAlto  ) / 2 )

nAltFinal := (nWAlto-20) + nRow
nAncFinal := (nWAncho) + nCol

DEFINE DIALOG oDlgIc FROM nRow, nCol TO nAltFinal, nAncFinal ;
PIXEL TITLE "| HYMPLUS / LYMA - Sistemas de Información |" ;
COLOR CLR_WHITE, Rgb( 182, 182, 182 )  


ACTIVATE DIALOG oDlgIc ON INIT CrearPaneles(oDlgIc)
Return nil

Function CrearPaneles(oDlg)

oDock1  := TDockPnel():New( oDlg )
WITH OBJECT oDock1
    :SetHeightCaption( 30 )
    :SetCoors( { | o | 10 }, ;
    { | o | 10 }, ;
    { | o | Int( o:oWnd:nHeight  ) - 50 }, ;
    { | o | (Int( o:oWnd:nWidth / 12 )*8) - XEVal( o:nLeft, o ) } )
    :SetCaption( { | o | "Información de Interes" } )
    :SetColors( CLR_WHITE, CLR_RED , Rgb( 88, 88, 88 ), CLR_HGRAY )
    :SetFont( oFont4 )
    :lLeftImgs   := .F.
    :lBottom := .F. 
    :SetBorderSize( 4 )
    :SetCtrlsPnel( { | o, nT, nL, nH, nW, oB | oB := ShowPageWeb( o, cUrl, nT, nL, nH, nW ) }  )     
    :bRClicked   := { || MsgInfo( oDock1:oWnd:aControls[ 1 ]:ClassName() ) }
    :Activate()
END

oDock2  := TDockPnel():New( oDlg )
WITH OBJECT oDock2
    :SetHeightCaption( 30 )
    :SetCoors( { | o | XEval( o:oWnd:aControls[ 1 ]:nTop, o ) }, ;
    { | o | XEval( o:oWnd:aControls[ 1 ]:nRight, o ) + 10 }, ;
    { | o | XEval( o:oWnd:aControls[ 1 ]:nBottom, o ) - 1 }, ;
    { | o | (Int( o:oWnd:nWidth / 12 )*4) + XEval( o:nLeft, o ) - 25 } )
    :SetCaption( { | o | "Inicio de Sesión" } )
    :SetColors( CLR_WHITE, CLR_RED , Rgb( 88, 88, 88 ), CLR_HGRAY )
    :SetBorderSize( 4 )
    :SetFont( oFont4 )
    :lLeftImgs   := .F.
    :lBottom := .F.
    :SetCtrlsPnel( { | o, nT, nL, nH, nW | MyTest1(  o, nT, nL, nH, nW, oRsEmp, lRetorna ) } )
    :Activate()
END  

Return nil
 
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: TDockPnel sobre dialogo

Postby leandro » Tue Feb 09, 2021 1:18 am

Buenas noches,

Logre detectar que el cuadro gris sale, cuando coloco la clausula PASSWORD en el GET y las mayúsculas están activadas, sale en el mismo instante que sale ese cuadro amarillo en la parte inferior del GET.

Image

De antemano gracias.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: TDockPnel sobre dialogo

Postby leandro » Tue Feb 09, 2021 3:01 am

Buenas noches sigo investigando.

Haciendo mas pruebas, pude detectar que si compilo desde consola en los samples, ese cuadrito amarillo no sale. Como puedo quitarlo? que librería se encarga de esas funciones?

De antemano gracias.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: TDockPnel sobre dialogo

Postby karinha » Tue Feb 09, 2021 11:04 am

Creo que:

Code: Select all  Expand view

C:\XHBBCC74\lib\gtwin.Lib

ó:

C:\XHBBCC74\lib\gtgui.Lib
 


Intenta y reporte.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7251
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: TDockPnel sobre dialogo

Postby leandro » Tue Feb 09, 2021 3:22 pm

Amigo karinha muchas gracias por responder.

Pero te cuento que no funciono, probé con cada una por aparte y hasta con las dos al tiempo. Pero no funciono, sigue saliendo ese cuadro gris y también el cuadro amarillo.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1482
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Re: TDockPnel sobre dialogo

Postby karinha » Tue Feb 09, 2021 3:30 pm

Que hace esto? Y en la classe? ó no tiene el código? Habla con mister Navarro.

Code: Select all  Expand view

:SetColors( CLR_WHITE, CLR_RED , Rgb( 88, 88, 88 ), CLR_HGRAY )
 


Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7251
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: TDockPnel sobre dialogo

Postby cnavarro » Sun Feb 14, 2021 6:12 pm

El código fuente no lo he publicado
Efectivamente :SetColor define los colores del texto y fondo tanto del panel principal como el del titulo
Cristobal Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
User avatar
cnavarro
 
Posts: 6501
Joined: Wed Feb 15, 2012 8:25 pm
Location: España


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 10 guests