Code: Select all
// Dinamically changing a folder dialog
#include "FiveWin.ch"
function Main()
local oDlg, oFld
DEFINE DIALOG oDlg RESOURCE "Test"
REDEFINE FOLDER oFld ID 10 OF oDlg ;
PROMPTS "One", "Two", "Three" ;
DIALOGS "dlg1", "dlg2", "dlg3"
REDEFINE BUTTON ID 20 OF oFld:aDialogs[ 2 ] ;
ACTION ChangeDlg( oFld )
ACTIVATE DIALOG oDlg CENTERED
return nil
function ChangeDlg( oFld )
oFld:aDialogs[ 2 ]:bValid = nil
oFld:aDialogs[ 2 ]:End()
DEFINE DIALOG oFld:aDialogs[ 2 ] RESOURCE "dlg4" OF oFld ;
FONT oFld:oFont
ACTIVATE DIALOG oFld:aDialogs[ 2 ] NOWAIT ;
ON INIT oFld:aDialogs[ 2 ]:Move( oFld:nFdHeight - 1, 1 ) ;
VALID .f.
oFld:aDialogs[ 2 ]:SetSize( oFld:nWidth() - 4,;
oFld:nHeight() - oFld:nFdHeight - 2 )
return nil
Code: Select all
test DIALOG 56, 54, 194, 148
STYLE DS_MODALFRAME | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Test"
FONT 8, "MS Sans Serif"
{
CONTROL "", 10, "SysTabControl32", 0 | WS_CHILD | WS_VISIBLE, 8, 9, 178, 114
DEFPUSHBUTTON "OK", IDOK, 42, 128, 50, 16
PUSHBUTTON "Cancel", IDCANCEL, 102, 128, 50, 16
}
dlg1 DIALOG 18, 18, 134, 84
STYLE WS_CHILD | 4
{
LTEXT "First page:", 10, 22, 17, 48, 8
EDITTEXT 10, 22, 30, 65, 11
}
dlg2 DIALOG 18, 18, 134, 84
STYLE WS_CHILD | 4
{
LTEXT "Second page:", 10, 22, 17, 48, 8
EDITTEXT 10, 22, 30, 65, 11
PUSHBUTTON "Change", 20, 45, 57, 44, 12
}
dlg3 DIALOG 18, 18, 134, 84
STYLE WS_CHILD | 4
{
LTEXT "Third page:", 10, 22, 17, 48, 8
EDITTEXT 10, 22, 30, 65, 11
}
dlg4 DIALOG 18, 18, 134, 84
STYLE WS_CHILD | 4
{
LTEXT "Fourth page:", 10, 22, 17, 48, 8
EDITTEXT 10, 22, 30, 65, 11
}