Sr. Manuel, Antonio:
Muito obrigado por responder Sr. Manuel, consegui reproduzir o problema aqui:
Montei este teste de exemplo em cima do fwh/samples/testfldm.prg pode ser usar o RECURSO referente.
O erro acontece se a CLAUSULA 2007 estiver no MENU ( MENU 2007) e o tema do WINDOWS for o classico ou diferente do tema XP.
Para reproduzir o problema:
1) Execute o exemplo.
2) Click na button bar e abra WINDOW child.
3) Va em Menu->Test MULTILINE Folder
Comigo acontece um erro do windows (Este programa executou uma operação ilegal e sera fechado)
PRG:
- Code: Select all Expand view
#include "FiveWin.ch"
#include "folder.ch"
static oWnd
*****************
FUNCTION Main()
*****************
Local oBar
DEFINE WINDOW oWnd FROM 5,5 TO 25,75 ;
TITLE "Folders Test" ;
MENU BuildMenu() MDI
DEFINE BUTTONBAR oBar 3D OF oWnd 2007 SIZE 600,33
DEFINE BUTTON prompt "CLICK AQUI e depois MENU->Test Multiline Folder" OF oBar ACTION CustomerBrowse()
SET MESSAGE OF oWnd TO "FiveWin xBase power!" CENTERED 2007
ACTIVATE WINDOW oWnd MAXIMIZED
RETURN(NIL)
*********************
FUNCTION BuildMenu()
*********************
LOCAL oMenu
MENU oMenu 2007 <---[b]2007 com o tela classico acontece o erro[/b]
MENUITEM "Test Folders"
MENU
MENUITEM "Test MULTILINE Folder" ACTION MultiFold()
MENUITEM "Close Window" ACTION oWnd:End()
ENDMENU
ENDMENU
RETURN(oMenu)
********************
FUNCTION MultiFold()
********************
local oDlg, oFld
local oGet1, cGet1 := "This is a Test!", oGet2, cGet2, oGet3, cGet3
local oGet4, cGet4, oGet5, cGet5, oGet6, cGet6, oGet7, cGet7, oget8, cGet8
DEFINE DIALOG oDlg RESOURCE "Shel_ent" of oWnd
REDEFINE FOLDER oFld ID 11 of oDlg ;
PROMPT "Identification","Composition", "Phys. Properties","Fire, Explosion", "Reactivity", "HazardEval", "Chronic Hazards", "Other Info" ;
DIALOGS "create_1", "create_2", "create_3", "create_4", "create_5", "create_6", "create_7", "create_8"
REDEFINE GET oGet1 VAR cGet1 ID 101 of oFld:aDialogs[1] UPDATE
REDEFINE GET oGet2 VAR cGet2 ID 101 of oFld:aDialogs[2] UPDATE
REDEFINE GET oGet3 VAR cGet3 ID 101 of oFld:aDialogs[3] UPDATE
REDEFINE GET oGet4 VAR cGet4 ID 101 of oFld:aDialogs[4] UPDATE
REDEFINE GET oGet5 VAR cGet5 ID 101 of oFld:aDialogs[5] UPDATE
REDEFINE GET oGet6 VAR cGet6 ID 101 of oFld:aDialogs[6]
REDEFINE GET oGet7 VAR cGet7 ID 101 of oFld:aDialogs[7]
REDEFINE GET oGet8 VAR cGet8 ID 101 of oFld:aDialogs[8]
REDEFINE BUTTON ID 10 of oDlg ACTION MsgInfo("OK Action is Here!")
REDEFINE BUTTON ID 2 of oDlg ACTION oDlg:End()
REDEFINE BUTTON ID 998 OF oDlg ACTION MsgInfo("Help Will be here")
ACTIVATE DIALOG oDlg CENTERED RESIZE16 ON INIT oFld:AdjustRect() // only if using RESIZE16
RETURN(NIL)
*******************************
function CustomerBrowse()
*******************************
local oWndChild, oBrw, oFld
local cAlias
USE Customer NEW ALIAS ( cAlias := GetNewAlias( "CUST" ) ) SHARED
DEFINE WINDOW oWndChild MDICHILD TITLE Alias()
@ 2, 2 FOLDER oFld PROMPTS "Browse", "Second", "Last" OF oWndChild
oWndChild:SetControl( oFld )
@ 0, 0 LISTBOX oBrw ;
FIELDS ( cAlias )->First, ( cAlias )->Last ;
HEADERS "First", "Last" OF oFld:aDialogs[ 1 ]
oFld:aDialogs[ 1 ]:SetControl( oBrw )
oWndChild:Activate()
oWndChild:MAXIMIZE()
return nil
*********************************
function GetNewAlias( cDbfName )
*********************************
static n := 0
return cDbfName + StrZero( ++n, 2 )