FWH which version are you using?
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
FWH which version are you using?
Cristobal,
FWH 14.12, Harbour 3.2, BCC 5.8.2,
/* ************************************************************************** *
* Project : FREGUESIA *
* Module : freguesia.prg *
* Author : Joao Ferreira *
* Date Written : 2015.Ago.04 *
* Date Compiled : *
* ************************************************************************** */
#include "fivewin.ch"
#include "colores.ch"
/* ************************************************************************* */
static oWndUI
static nRefresh := 0
/* ************************************************************************* */
function main()
local lMax := .T.
local lMdi := .F.
local nCor := METRO_AZUL3
local cTit := "Junta de Freguesia"
local cUser := WNetGetUser()
local aBtn := { { ".\res\junta.png", ".\res\people.png" }, ;
{ ".\res\docs.png", ".\res\cemiterio.png" }, ;
{ ".\res\canideos.png", ".\res\felinos.png" }, ;
{ ".\res\ctt.png", ".\res\stock.png" } }
SET EPOCH TO 1990
SET CENTURY ON
SET DELETED ON
SET DATE FORMAT "DD/MM/YYYY"
SET DECIMALS TO 2
XBrNumFormat("E", .T.)
SetResDebug(.T.)
oWndUI := TWindowsUI():PnelPPal(.T., lMax, lMdi, nCor, cTit, cUser, aBtn)
oWndUI:ActivaUI()
Hb_GCall()
CLEAR MEMORY
CheckRes()
return nil
/* ************************************************************************* */"c:\dev\testui\source\uiwindow.prg(3098) Error E0030 Syntax error "sytanx error at 'FUNCTION'"
"c:\dev\testui\source\uiwindow.prg(3491) Error E0030 Syntax error "sytanx error at 'FUNCTION'"
"c:\dev\testui\source\uiwindow.prg(3495) Error E0030 Syntax error "sytanx error at 'FUNCTION'"
DLL FUNCTION keybd_event( bVk as _INT, ;
bScan as _INT, ;
dwFlags as LONG, ;
dwExtraInfo as LONG ) AS VOID PASCAL ;
FROM "keybd_event" LIB "user32.dll" <<---- line 3098DLL32 function setwindowlong( hwnd as LONG, index as LONG, newlog as LONG ) ;
AS LONG PASCAL FROM "SetWindowLongA" lib "user32.dll" <<--- line 3491DLL32 function getwindowlong( hwnd as LONG, index as LONG ) AS LONG PASCAL ;
FROM "GetWindowLongA" lib "user32.dll" <<---- line 3495set path=%path%;c:\dev\bcc582\bin\;
C:\dev\hb32\BIN\HBMK2.EXE -prgflag=/n /m /w /es1 /gc1 -cflag=/c /O2 -inc -comp=bcc -workdir=c:\prj\freguesia\obj -iC:\dev\fwh\include -ic:\dev\testui\include -iC:\prj\freguesia\include -ic:\dev\testui\source -ic:\prj\freguesia\source c:\prj\freguesia\source\freguesia.prg c:\dev\testui\source\uiwindow.prg c:\dev\testui\source\uidialog.prg c:\dev\testui\source\xcbrowse.prg c:\dev\testui\source\tribbonc.prg c:\dev\testui\source\barc.prg c:\dev\testui\source\cmru.prg -Lc:\dev\fwh\lib -Lc:\dev\bcc582\lib -Lc:\dev\bcc582\lib\psdk -lfiveh -lfivehc -lpng -lhbct -lxhb -lgtgui -lhbwin -lcw32 -luuid -limport32 -lws2_32 -lodbc32 -lnddeapi -liphlpapi -lmsimg32 -lpsapi -lrasapi32 -lgdiplus -lshell32Download
Enlace con los ejemplos
https://www.dropbox.com/s/yvk3mv8g0ex89 ... 0.zip?dl=0
Carpeta con recursos e iconos
Creo que estan todos
https://www.dropbox.com/s/cwqzgpotajd3sis/Res.zip?dl=0
Enlace con el fichero .Bat para construir los ejemplos
Link to the file. Bat to construct examples
https://www.dropbox.com/s/cv6cbojeldilw ... i.bat?dl=0
Tienes que modificar los path de Fivewin y de Harbour
Forma de usarlo
You have to change the path of Fivewin and Harbour
Method of use
C:\FiveUI>makeui wndui01 (para crear el ejemplo wndui01, y asi sucesivamente)
(to create the example wndui01, and so on)
Voy a adjuntar tambien los Objs construidos
I'll also attach the built Objs
https://www.dropbox.com/s/emczcr2tfux1y0a/obj.zip?dl=0
Y las clases
https://www.dropbox.com/s/f6sbbyypztisr ... e.zip?dl=0
Ojo, el fichero .ZIP de ejemplos WNDUI00.ZIP que publiqué antes ha de colocarse en la carpeta SOURCE
Eye, the ZIP file. WNDUI00.ZIP examples I posted before has placed in the SOURCE folder
Instrucciones:
- Crear una carpeta en el subidrectorio raiz C:\FiveUI
(Si deseas crearla en otra carpeta tendrás que modificar el fichero .BAT que adjunto
- La estructura de la carpeta ha de ser
C:\FiveUI
-- Include
-- Obj
-- Res
-- Source
y colocar las carpetas comprimidas que he publicado en sus respectivas ubicaciones
instructions:
- Create a folder on the root subidrectorio C: \ FiveUI
(If you want to create another folder you will have to modify the file. Attached BAT
- The folder structure must be
C: \ FiveUI
- Include
- Obj
- Res
- Source
and place the compressed folders that I posted at their respective locations
My mail
navarro . cristobal at gmail . com ( non spaces )
My english is very poor
Gracias Cristobal...
Si es más fácil para usted puede escribir en español ya que entiendo perfectamente ya que soy portugués ...
![]()
Has conseguido generar los ejemplos?
Buenas Cristobal
Sí , después de descargar la versión correcta de Harbour para el bcc582 puerto podría compilar y ejecutar todos los ejemplos ... Ahora que estoy haciendo pruebas con ellos para ver cómo funcionan sus clases y funciones con el fin de adaptarlos a mis necesidades .


/* ************************************************************************** *
* Project : FREGUESIA *
* Module : freguesia.prg *
* Author : Joao Ferreira *
* Date Written : 2015.Ago.04 *
* Date Compiled : *
* ************************************************************************** */
#include "fivewin.ch"
#include "colores.ch"
/* ************************************************************************* */
static oWndUI
static nRefresh := 0
/* ************************************************************************* */
function main()
local lMax := .T.
local lMdi := .F.
local nCor := METRO_AZUL3
local cTit := "Junta de Freguesia"
local cUser := WNetGetUser()
local bAct
local aBtt := { { ".\res\guest.bmp", ".\res\guest.bmp" }, ;
{ ".\res\OnOff.bmp", ".\res\OnOff.bmp" }, ;
{ ".\res\busca.bmp", ".\res\busca.bmp" } }
local aBmp01 := { ;
".\res\junta.bmp", ;
".\res\people.bmp", ;
".\res\docs.bmp", ;
".\res\mail.bmp" ;
}
local aBmp02 := { ;
".\res\cemiterio.bmp", ;
".\res\canideos.bmp", ;
".\res\felinos.bmp" ;
}
local aBmp03 := { ;
".\res\ctt.bmp", ;
".\res\stock.bmp", ;
".\res\report.bmp", ;
".\res\report.bmp" ;
}
local aBmp04 := { ;
".\res\tools.bmp", ;
".\res\settings.bmp", ;
".\res\data.bmp", ;
".\res\sair.bmp" ;
}
local aBmps := { aBmp01, aBmp02, aBmp03, aBmp04 }
local aItems := { { "Junta Freguesia", ;
"População", ;
"Documentos", ;
"Correspondência" ;
}, ;
{ "Cemitério", ;
"Canídeos", ;
"Felinos" ;
}, ;
{ "C.T.T.", ;
"Stocks", ;
"Rel. Mensal", ;
"Rel. Anual" ;
}, ;
{ "Utilitários", ;
"Configuração", ;
"Dados", ;
"Sair" ;
}, ;
}
local aTitGrps := { "Geral", "Taxas", "Contabilidade", "Ferramentas" }
SET EPOCH TO 1990
SET CENTURY ON
SET DELETED ON
SET DATE FORMAT "DD/MM/YYYY"
SET DECIMALS TO 2
XBrNumFormat("E", .T.)
SetResDebug(.T.)
oWndUI := TWindowsUI():PnelPPal(.T., lMax, lMdi, nCor, cTit, cUser, aBtt)
oWndUI:lBttExitUI := .T.
oWndUI:aBttExitUI := { ".\res\exit1.bmp", ".\res\exit2.bmp", 48, 20 }
bAct := { | x, y, nF, oCol | XBrwMnu( oCol:oBrw:nRowSel, ;
oCol:oBrw:nColSel, oCol ) }
oWndUI:UIXPnel( oWndUI, aBmps, aTitGrps, 64, aItems, bAct )
oWndUI:ActivaUI()
Hb_GCall()
CLEAR MEMORY
if File( "checkres.txt" )
FErase( "checkres.txt" )
endif
CheckRes()
return nil
/* ************************************************************************* */
function XBrwMnu( nRow, nCol, oCol )
local nWinds := Len( oWndUI:GetListWnds() )
do case
case nCol = 1
do case
case nRow = 1
TDialogUI():DlgMsgUI( "Nº de Janelas", Str( nWinds ), , , , , ,)
case nRow = 2
case nRow = 3
case nRow = 4
endcase
case nCol = 2
do case
case nRow = 1
case nRow = 2
case nRow = 3
case nRow = 4
endcase
case nCol = 4
do case
case nRow = 1
case nRow = 2
case nRow = 3
case nRow = 4
endcase
case nCol = 5
do case
case nRow = 1
case nRow = 2
case nRow = 3
case nRow = 4
endcase
case nCol = 7
do case
case nRow = 1
case nRow = 2
case nRow = 3
case nRow = 4
endcase
case nCol = 8
do case
case nRow = 1
case nRow = 2
case nRow = 3
case nRow = 4
endcase
case nCol = 9
do case
case nRow = 1
case nRow = 2
case nRow = 3
case nRow = 4
endcase
otherwise
if Empty( nCol ) .or. nCol > Len( oCol:oBrw:aCols )
? "Coluna nao definida"
endif
endcase
Return nil local aBmps := { aBmp01, ,aBmp02, ,aBmp03, ,aBmp04 }
local aItems := { { "Junta Freguesia", ;
"População", ;
"Documentos", ;
"Correspondência" ;
}, ;
{},;
{ "Cemitério", ;
"Canídeos", ;
"Felinos" ;
}, ;
{},;
{ "C.T.T.", ;
"Stocks", ;
"Rel. Mensal", ;
"Rel. Anual" ;
}, ;
{},;
{ "Utilitários", ;
"Configuração", ;
"Dados", ;
"Sair" ;
} ;
}