Page 1 of 2
To Antonio and all Simply Test ExplorerBar RESOLVED!
Posted: Thu Aug 19, 2010 4:37 pm
by Silvio
try this sample test please
I used customer.dbf and Test.dbf you can found on fwh\samples
Code: Select all
#include "FiveWin.ch"
#include "XBrowse.ch"
#include "Splitter.ch"
// Purpose: Showing two xbrowse with a Horizontal splitter in a dialog,
// an explorerbar at Right , on the first xbrowse there is a tab
// Author : Silvio falconi
// Date : 19.08.2010
STATIC oWnd,oBar,oDlg ,oSplit2,oSplit,oExBar
function Main()
DEFINE WINDOW oWnd TITLE "Simply Test ExplorerBar two browse, tab, and splitters" ;
MENU BuildMenu()
DEFINE BUTTONBAR oBar _3D SIZE 44, 46 OF oWnd 2007
oWnd:bResized := {|| ResizeWndMain() }
ACTIVATE WINDOW oWnd maximized on init Test()
return nil
function BuildMenu()
local oMenu
MENU oMenu 2007
MENUITEM "Test"
MENU
MENUITEM "Go Test "
ENDMENU
oMenu:AddMdi()
ENDMENU
return oMenu
function test()
Local oDlg
Local oGrid2
Local oGrid3
Local nSplit :=220
local aClient
lOCAL nGridBottom,nGridRight
local oTab
// create the dialog into oWnd
aClient := GetClientRect (oWnd:hWnd )
DEFINE DIALOG oDlg
oDlg:nTop = oBar:nHeight-1
oDlg:nLeft = 0
oDlg:nBottom = aClient[3] - 1
oDlg:nRight = aClient[4]
oDlg:nStyle = nOR( WS_CHILD, 4 )
nGridBottom := (oDlg:nBottom / 2) - oBar:nHeight
nGridRight := (oDlg:nRight / 2 )
// oWnd:oClient := oDlg
@0,0 EXPLORERBAR oExBar of oDlg SIZE nSplit-2, oDlg:nBottom
// open first xbrowse
SELECT 1
USE Customer ALIAS CU
oGrid2 := TXBrowse():New( oDlg )
oGrid2:nTop := 00
oGrid2:nLeft := nSplit+2
oGrid2:nBottom := 200
oGrid2:nRight := nGridRight
oCol = oGrid2:AddCol()
oCol:bStrData = { || CU->First }
oCol:cHeader = "First"
oGrid2:cAlias :=CU->(Alias())
oGrid2:SetRDD()
oGrid2:CreateFromCode()
//create the Tabs
@ oGrid2:nBottom, oGrid2:nLeft TABS oTab ;
OPTION 1 SIZE oWnd:nWidth()-80, 12 PIXEL OF oDlg ;
ITEMS ' First ', ' Last ';
ACTION ( nOrder := oTab:nOption ,;
CU->(DbSetOrder(nOrder)),;
CU->(DbGoTop()) ,;
oGrid2:Refresh(.t.) )
// open second xbrowse
SELECT 2
USE TEST ALIAS TEST
oGrid3 := TXBrowse():New( oDlg )
// oGrid3:nTop := oGrid2:nBottom+5
oGrid3:nTop := oTab:nbottom+5
oGrid3:nLeft := nSplit+2
oGrid3:nBottom := nGridBottom
oGrid3:nRight := nGridRight
oGrid3:cAlias :=TEST->(Alias())
oGrid3:SetRDD()
oGrid3:CreateFromCode()
//First splitter
@ oTab:nbottom+2, nSplit SPLITTER oSplit2 ;
HORIZONTAL ;
COLOR CLR_RED ;
PREVIOUS CONTROLS oGrid2,oTab ;
HINDS CONTROLS oGrid3 ;
SIZE oGrid3:nRight, 2 PIXEL ;
OF oDlg ;
_3DLOOK ;
UPDATE
// second Splitter
@ 00, nSplit SPLITTER oSplit ;
VERTICAL ;
COLOR CLR_BLUE ;
PREVIOUS CONTROLS oExBar;
HINDS CONTROLS oGrid2, oGrid3, oSplit2,oTab;
SIZE 1, nGridBottom PIXEL ;
OF oDlg ;
_3DLOOK ;
UPDATE
ACTIVATE DIALOG oDlg NOWAIT;
ON INIT ExplBarInit( oExBar ) ;
ON PAINT oSplit:AdjClient()
return nil
Function ResizeWndMain()
local aClient
if oDlg != NIL
aClient := GetClientRect (oWnd:hWnd )
oDlg:SetSize( aClient[4], aClient[3] - oWnd:oBar:nHeight - oWnd:oMsgBar:nHeight )
// oApp():oDlg:Move(oApp():oDlg:nYMove,)
oDlg:Refresh()
SysRefresh()
endif
return NIL
function ExplBarInit( oExBar )
local oPanel1, oPanel2, oPanel3, oPanel4
local bClick := { | o | MsgInfo( o:GetText() ) }
oPanel1 = oExBar:AddPanel( "One", "people" )
oPanel1:lSpecial = .T.
oPanel1:AddLink( "First item", bClick, "additem" )
oPanel1:AddLink( "Second item", bClick, "copy" )
oPanel2 = oExBar:AddPanel( "Two", "case" )
oPanel2:AddLink( "First item", bClick, "adddbf" )
oPanel2:AddLink( "Second item", bClick, "delete" )
oPanel2:AddLink( "Third item", bClick, "envelope" )
oPanel2:AddLink( "Fourth item", bClick, "envelope" )
oPanel3 = oExBar:AddPanel( "Three", "graphics" )
oPanel3:AddLink( "First item", bClick, "adddbf" )
oPanel4 = oExBar:AddPanel( "Four" )
oPanel4:AddLink( "First item", bClick, "copy" )
oPanel4:AddLink( "Second item", bClick, "additem" )
return nil
the problem is : the horizontal splitter run bad because when I move it the tab control ( it is on down the first xbrowse) become bigger and the I cannot move the Horizontal splitter
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 5:38 pm
by Daniel Garcia-Gil
Silvio...
i explained you yesterday by chat...
leave here a simple test... working
http://www.sitasoft.net/fivewin/samples/spli.zip
Code: Select all
#include "fivewin.ch"
#include "Splitter.ch"
REQUEST DBFCDX
FUNCTION Main()
LOCAL oSample
oSample = TSample():New()
RETURN NIL
//--------------------
CLASS TSample
DATA oWnd
DATA oTaskpanel
DATA oSplitV
DATA oSplitH
DATA oGrid
DATA oTab
DATA oPanelLeft
DATA oPanelTop
DATA oPanelDown
METHOD New()
METHOD BuildGrid()
METHOD BuildPanel()
METHOD BuildSplitterH()
METHOD BuildSplitterV()
METHOD Buildtab()
METHOD OnResizeWnd( nWidth, nHeight )
ENDCLASS
//--------------------
METHOD New() CLASS TSample
LOCAL oBrush
DEFINE BRUSH oBrush COLOR CLR_CYAN
DEFINE WINDOW ::oWnd
::oPanelLeft = TPanel():New( 0, 0, 150, 150, ::oWnd )
::oPanelTop = TPanel():New( 0, ::oPanelLeft:nRight + 5, ::oWnd:nHeight, ::oWnd:nWidth, ::oWnd )
::oPanelDown = TPanel():New( ::oPanelTop:nHeight + 5, ;
::oPanelLeft:nRight + 5, ;
::oWnd:nHeight - ::oPanelTop:nHeight - 5, ;
::oWnd:nWidth, ::oWnd )
::BuildPanel()
::BuildGrid()
::BuildTab()
::BuildSplitterH()
::BuildSplitterV()
::oPanelDown:SetBrush( oBrush )
::oWnd:bResized = {| nType, nWidth, nHeight | ::OnResizeWnd( nWidth, nHeight ) }
ACTIVATE WINDOW ::oWnd
RETURN Self
//--------------------
METHOD BuildGrid() CLASS TSample
LOCAL i, aBrowse, oCol
USE "customer" ALIAS CU NEW SHARED
::oGrid := TXBrowse():New( ::oPanelTop )
::oGrid:nTop := 0
::oGrid:nLeft := 0
::oGrid:nBottom := ::oWnd:nHeight
::oGrid:nRight := ::oWnd:nWidth
aBrowse := { { { || CU->FIRST }, i18n("First"), 150, 0 },;
{ { || CU->LAST }, i18n("Last"), 150, 0 },;
{ { || CU->STREET}, i18n("Street"), 150, 0 },;
{ { || CU->CITY } , i18n("City"), 150, 0 } }
FOR i := 1 TO Len(aBrowse)
oCol := ::oGrid:AddCol()
oCol:bStrData := aBrowse[ i, 1 ]
oCol:cHeader := aBrowse[ i, 2 ]
oCol:nWidth := aBrowse[ i, 3 ]
oCol:nDataStrAlign := aBrowse[ i, 4 ]
oCol:nHeadStrAlign := aBrowse[ i, 4 ]
NEXT
::oGrid:SetRDD()
::oGrid:CreateFromCode()
::oPanelTop:oClient = ::oGrid
RETURN NIL
//--------------------
METHOD BuildPanel() CLASS TSample
LOCAL oPanel1
lOCAL bClick:={|| msgInfo( "clicked") }
::oTaskPanel := TExplorerBar():New( 0, 0, 150, 150, ::oPanelLeft )
oPanel1 = ::oTaskPanel:AddPanel( "One", "c:\fwh\bitmaps\32x32\people.bmp" )
oPanel1:lSpecial = .T.
oPanel1:AddLink( "First item", bClick, "c:\fwh\bitmaps\16x16\additem.bmp" )
oPanel1:AddLink( "Second item", bClick, "c:\fwh\bitmaps\16x16\copy.bmp" )
::oPanelLeft:oClient = ::oTaskPanel
RETURN NIL
//--------------------
METHOD BuildSplitterV() CLASS TSample
@ 00, ::oTaskPanel:nWidth + 1 SPLITTER ::oSplitV ;
VERTICAL ;
COLOR CLR_YELLOW ;
PREVIOUS CONTROLS ::oPanelLeft ;
HINDS CONTROLS ::oPanelTop, ::oPanelDown, ::oSplitH;
SIZE 2, ::oWnd:nHeight PIXEL ;
LEFT MARGIN 70 ;
RIGHT MARGIN 200 ;
OF ::oWnd ;
UPDATE
RETURN NIL
//--------------------
METHOD BuildSplitterH() CLASS TSample
@ ::oGrid:nHeight + 1, ::oTaskPanel:nWidth + 1 SPLITTER ::oSplitH ;
HORIZONTAL ;
COLOR CLR_YELLOW ;
PREVIOUS CONTROLS ::oPanelTop ;
HINDS CONTROLS ::oPanelDown;
SIZE ::oWnd:nWidth, 2 PIXEL ;
TOP MARGIN 120 ;
BOTTOM MARGIN 120 ;
OF ::oWnd ;
UPDATE
RETURN NIL
//--------------------
METHOD Buildtab() CLASS TSample
LOCAL oSelf := Self
@ ::oGrid:nBottom + 2, 0 TABS ::oTab SIZE ::oPanelTop:nWidth, 12 PIXEL OF ::oPanelTop ;
ITEMS ' First ', ' Last ';
ACTION ( CU->( DbSetOrder( ::oTab:nOption ) ),;
CU->( DbGoTop() ) ,;
oSelf:oGrid:Refresh( .T. ) )
::oPanelTop:oBottom = ::oTab
RETURN NIL
//--------------------
METHOD OnResizeWnd( nWidth, nHeight )
IF nWidth != NIL .AND. nHeight != NIL
::oPanelLeft:SetSize( ::oPanelLeft:nWidth, nHeight )
::oSplitV:SetSize( ::oSplitV:nWidth, nHeight )
::oSplitV:nLong = nHeight
::oPanelTop:SetSize( nWidth - ::oPanelLeft:nWidth - ::oSplitV:nWidth, ::oPanelTop:nHeight )
::oSplitH:SetSize( nWidth, 2 )
::oSplitH:nLong = nWidth
::oPanelDown:SetSize( nWidth - ::oPanelLeft:nWidth - ::oSplitV:nWidth, nHeight - ::oPanelDown:nTop )
ENDIF
RETURN NIL
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 5:41 pm
by Silvio
ok this in a Window ...I understood What you sad on chat
But I'm thinking ... the dialog is From Twindow Class
If you Know How resolve it on a Window You Know How Resolve it on a Dialog...
and then I not understood why if I ask to resolve it on a Dialog Why U and All let me sad to resolve it on Window
On past there is one man ( now also alive) not Know How resolve mine problems and allways he thinked How around the problem to propose another solution ....
I use a Dialog ( Nor. 4 style ) on a Window no MDi not a window ... I explained you the problem yesterday at chat
If I cannot create it , NO PROBLEM !!!
On past When the problem is not Of Community , I cannot resolve the problem,... I must only wait when someone of You has the same problem
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 5:57 pm
by Daniel Garcia-Gil
Silvio
absolutely same
this samples is with dialog now... (windows, dialogs and panels)
http://www.sitasoft.net/fivewin/samples/spli2_1.zip
Code: Select all
#include "fivewin.ch"
#include "Splitter.ch"
REQUEST DBFCDX
FUNCTION Main()
LOCAL oSample
oSample = TSample():New()
RETURN NIL
//--------------------
CLASS TSample
DATA oWnd
DATA oTaskpanel
DATA oSplitV
DATA oSplitH
DATA oGrid
DATA oTab
DATA oPanelLeft
DATA oPanelTop
DATA oPanelDown
METHOD New()
METHOD BuildGrid()
METHOD BuildPanel()
METHOD BuildSplitterH()
METHOD BuildSplitterV()
METHOD Buildtab()
METHOD OnResizeWnd( nWidth, nHeight )
ENDCLASS
//--------------------
METHOD New() CLASS TSample
LOCAL oBrush
LOCAL oSelf := Self
DEFINE BRUSH oBrush COLOR CLR_CYAN
DEFINE WINDOW ::oWnd
DEFINE DIALOG ::oPanelLeft STYLE nOr( WS_CHILD ) SIZE 150, 150 OF ::oWnd
ACTIVATE DIALOG ::oPanelLeft NOWAIT
DEFINE DIALOG ::oPanelTop STYLE nOr( WS_CHILD ) SIZE 150, 150 OF ::oWnd
ACTIVATE DIALOG ::oPanelTop NOWAIT ;
ON INIT ::Move( 0, oSelf:oPanelLeft:nRight + 5, oSelf:oWnd:nHeight / 2, oSelf:oWnd:nWidth )
::oPanelDown = TPanel():New( ::oPanelTop:nHeight + 5, ;
::oPanelLeft:nRight + 5, ;
::oWnd:nHeight - ::oPanelTop:nHeight - 5, ;
::oWnd:nWidth, ::oWnd )
::BuildPanel()
::BuildGrid()
::BuildTab()
::BuildSplitterH()
::BuildSplitterV()
::oPanelDown:SetBrush( oBrush )
::oWnd:bResized = {| nType, nWidth, nHeight | ::OnResizeWnd( nWidth, nHeight ) }
ACTIVATE WINDOW ::oWnd
RETURN Self
//--------------------
METHOD BuildGrid() CLASS TSample
LOCAL i, aBrowse, oCol
USE "customer" ALIAS CU NEW SHARED
::oGrid := TXBrowse():New( ::oPanelTop )
::oGrid:nTop := 0
::oGrid:nLeft := 0
::oGrid:nBottom := ::oWnd:nHeight
::oGrid:nRight := ::oWnd:nWidth
aBrowse := { { { || CU->FIRST }, i18n("First"), 150, 0 },;
{ { || CU->LAST }, i18n("Last"), 150, 0 },;
{ { || CU->STREET}, i18n("Street"), 150, 0 },;
{ { || CU->CITY } , i18n("City"), 150, 0 } }
FOR i := 1 TO Len(aBrowse)
oCol := ::oGrid:AddCol()
oCol:bStrData := aBrowse[ i, 1 ]
oCol:cHeader := aBrowse[ i, 2 ]
oCol:nWidth := aBrowse[ i, 3 ]
oCol:nDataStrAlign := aBrowse[ i, 4 ]
oCol:nHeadStrAlign := aBrowse[ i, 4 ]
NEXT
::oGrid:SetRDD()
::oGrid:CreateFromCode()
::oPanelTop:oClient = ::oGrid
RETURN NIL
//--------------------
METHOD BuildPanel() CLASS TSample
LOCAL oPanel1
lOCAL bClick:={|| msgInfo( "clicked") }
::oTaskPanel := TExplorerBar():New( 0, 0, 150, 150, ::oPanelLeft )
oPanel1 = ::oTaskPanel:AddPanel( "One", "c:\fwh\bitmaps\32x32\people.bmp" )
oPanel1:lSpecial = .T.
oPanel1:AddLink( "First item", bClick, "c:\fwh\bitmaps\16x16\additem.bmp" )
oPanel1:AddLink( "Second item", bClick, "c:\fwh\bitmaps\16x16\copy.bmp" )
::oPanelLeft:oClient = ::oTaskPanel
RETURN NIL
//--------------------
METHOD BuildSplitterV() CLASS TSample
@ 00, ::oTaskPanel:nWidth + 1 SPLITTER ::oSplitV ;
VERTICAL ;
COLOR CLR_YELLOW ;
PREVIOUS CONTROLS ::oPanelLeft ;
HINDS CONTROLS ::oPanelTop, ::oPanelDown, ::oSplitH;
SIZE 2, ::oWnd:nHeight PIXEL ;
LEFT MARGIN 70 ;
RIGHT MARGIN 200 ;
OF ::oWnd ;
UPDATE
RETURN NIL
//--------------------
METHOD BuildSplitterH() CLASS TSample
@ ::oPanelTop:nHeight + 1, ::oTaskPanel:nWidth + 1 SPLITTER ::oSplitH ;
HORIZONTAL ;
COLOR CLR_YELLOW ;
PREVIOUS CONTROLS ::oPanelTop ;
HINDS CONTROLS ::oPanelDown;
SIZE ::oWnd:nWidth, 2 PIXEL ;
TOP MARGIN 120 ;
BOTTOM MARGIN 120 ;
OF ::oWnd ;
UPDATE
RETURN NIL
//--------------------
METHOD Buildtab() CLASS TSample
LOCAL oSelf := Self
@ ::oGrid:nBottom + 2, 0 TABS ::oTab SIZE ::oPanelTop:nWidth, 12 PIXEL OF ::oPanelTop ;
ITEMS ' First ', ' Last ';
ACTION ( CU->( DbSetOrder( ::oTab:nOption ) ),;
CU->( DbGoTop() ) ,;
oSelf:oGrid:Refresh( .T. ) )
::oPanelTop:oBottom = ::oTab
RETURN NIL
//--------------------
METHOD OnResizeWnd( nWidth, nHeight )
IF nWidth != NIL .AND. nHeight != NIL
::oPanelLeft:SetSize( ::oPanelLeft:nWidth, nHeight )
::oSplitV:SetSize( ::oSplitV:nWidth, nHeight )
::oSplitV:nLong = nHeight
::oPanelTop:SetSize( nWidth - ::oPanelLeft:nWidth - ::oSplitV:nWidth, ::oPanelTop:nHeight )
::oSplitH:SetSize( nWidth, 2 )
::oSplitH:nLong = nWidth
::oPanelDown:SetSize( nWidth - ::oPanelLeft:nWidth - ::oSplitV:nWidth, nHeight - ::oPanelDown:nTop )
ENDIF
RETURN NIL
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 6:04 pm
by James Bott
Daniel,
I previously had tried what you have done by putting the Explorer bar on a panel. This does force the scrollbar to be in the correct position, but the scrollbar doesn't work correctly. It is always visible instead of only being visible if there is something off the bottom of the window that could be scrolled.
As I discuss in another current thread on this topic I believe the explorer bar needs to be modified so that the scollbar is built into the control. See this thread for details:
http://forums.fivetechsupport.com/viewt ... =3&t=19614
Regards,
James
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 6:12 pm
by James Bott
Silvio,
As I have pointed out previously, you gain nothing by adding a dialog to the program. It just makes it more complex without adding a benefit.
I understand that you found that somehow it helped you fix a problem with "alias not found" errors, but this was an accidental discovery. You already had a program bug and this can easily be fixed without using a dialog.
Regards,
James
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 7:33 pm
by Silvio
James ,
You can think how you want withn this methos i not lose customers
I make an simply prg with a window
DEFINE WINDOW ::oWndMain
ACTIVATE WINDOW ::oWndMain
on button bar I click on CUSTOMER()
SELECT CU
oApp():oDlg := TFsdi():New(oApp():oWndMain) Create a DIALOG ( WS_CHILD or NOR 4 STYLE )
oApp():oDlg:cTitle := i18n('Gestión de clientes')
oApp():oWndMain:oClient := oApp():oDlg
oApp():oDlg:NewGrid( nSplit ) create a xbrowse
can i create an explorerbar
can I create a tabs on down the xbrowse
It run ok
I can create customers(), articles(), Orders(), Sales(),
I can create also GRAPH CLASS INSTEAD of Xbrowse
and it run ok
and now I not lose customers....
Many years ago when there was the newgrouo I had the problem " ALIAS DON'T EXIST" and none help me
Now I use a system on MDI solution ( Mr Alfredo Arteaga propose) and it run good and it run ok also on this new method ( ws_child or nor 4 style dialog) .
the problem not is the " ALIAS DON'T EXIST" the problem is another .. my problem is not of Community problem .....
As I allready wrote If I cannot create it NO PROBLEM !
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 7:44 pm
by Silvio
BUT THERE is SOMETHING I NOT UNDERSTOOD
GO ON MY TEST SAMPLE AND REM THE TAB CONTROL
or compile this
Code: Select all
#include "FiveWin.ch"
#include "XBrowse.ch"
#include "Splitter.ch"
// Purpose: Showing two xbrowse with a Horizontal splitter in a dialog,
// an explorerbar at Right , on the first xbrowse there is a tab
// Author : Silvio falconi
// Date : 19.08.2010
STATIC oWnd,oBar,oDlg ,oSplit2,oSplit,oExBar
function Main()
DEFINE WINDOW oWnd TITLE "Simply Test ExplorerBar two browse, tab, and splitters" ;
MENU BuildMenu()
DEFINE BUTTONBAR oBar _3D SIZE 44, 46 OF oWnd 2007
oWnd:bResized := {|| ResizeWndMain() }
ACTIVATE WINDOW oWnd maximized on init Test()
return nil
function BuildMenu()
local oMenu
MENU oMenu 2007
MENUITEM "Test"
MENU
MENUITEM "Go Test "
ENDMENU
oMenu:AddMdi()
ENDMENU
return oMenu
function test()
Local oDlg
Local oGrid2
Local oGrid3
Local nSplit :=220
local aClient
lOCAL nGridBottom,nGridRight
local oTab
// create the dialog into oWnd
aClient := GetClientRect (oWnd:hWnd )
DEFINE DIALOG oDlg
oDlg:nTop = oBar:nHeight-1
oDlg:nLeft = 0
oDlg:nBottom = aClient[3] - 1
oDlg:nRight = aClient[4]
oDlg:nStyle = nOR( WS_CHILD, 4 )
nGridBottom := (oDlg:nBottom / 2) - oBar:nHeight
nGridRight := (oDlg:nRight / 2 )
// oWnd:oClient := oDlg
@0,0 EXPLORERBAR oExBar of oDlg SIZE nSplit-2, oDlg:nBottom
// open first xbrowse
SELECT 1
USE Customer ALIAS CU
oGrid2 := TXBrowse():New( oDlg )
oGrid2:nTop := 00
oGrid2:nLeft := nSplit+2
oGrid2:nBottom := 200
oGrid2:nRight := nGridRight
oCol = oGrid2:AddCol()
oCol:bStrData = { || CU->First }
oCol:cHeader = "First"
oGrid2:cAlias :=CU->(Alias())
oGrid2:SetRDD()
oGrid2:CreateFromCode()
//create the Tabs
/*
@ oGrid2:nBottom, oGrid2:nLeft TABS oTab ;
OPTION 1 SIZE oWnd:nWidth()-80, 12 PIXEL OF oDlg ;
ITEMS ' First ', ' Last ';
ACTION ( nOrder := oTab:nOption ,;
CU->(DbSetOrder(nOrder)),;
CU->(DbGoTop()) ,;
oGrid2:Refresh(.t.) )
*/
// open second xbrowse
SELECT 2
USE TEST ALIAS TEST
oGrid3 := TXBrowse():New( oDlg )
oGrid3:nTop := oGrid2:nBottom+5
// oGrid3:nTop := oTab:nbottom+5
oGrid3:nLeft := nSplit+2
oGrid3:nBottom := nGridBottom
oGrid3:nRight := nGridRight
oGrid3:cAlias :=TEST->(Alias())
oGrid3:SetRDD()
oGrid3:CreateFromCode()
//First splitter
@ oGrid2:nBottom+2, nSplit SPLITTER oSplit2 ;
HORIZONTAL ;
COLOR CLR_RED ;
PREVIOUS CONTROLS oGrid2 ;
HINDS CONTROLS oGrid3 ;
SIZE oGrid3:nRight, 2 PIXEL ;
OF oDlg ;
_3DLOOK ;
UPDATE
// second Splitter
@ 00, nSplit SPLITTER oSplit ;
VERTICAL ;
COLOR CLR_BLUE ;
PREVIOUS CONTROLS oExBar;
HINDS CONTROLS oGrid2, oGrid3, oSplit2;
SIZE 1, nGridBottom PIXEL ;
OF oDlg ;
_3DLOOK ;
UPDATE
ACTIVATE DIALOG oDlg NOWAIT;
ON INIT ExplBarInit( oExBar ) ;
ON PAINT oSplit:AdjClient()
return nil
Function ResizeWndMain()
local aClient
if oDlg != NIL
aClient := GetClientRect (oWnd:hWnd )
oDlg:SetSize( aClient[4], aClient[3] - oWnd:oBar:nHeight - oWnd:oMsgBar:nHeight )
// oApp():oDlg:Move(oApp():oDlg:nYMove,)
oDlg:Refresh()
SysRefresh()
endif
return NIL
function ExplBarInit( oExBar )
local oPanel1, oPanel2, oPanel3, oPanel4
local bClick := { | o | MsgInfo( o:GetText() ) }
oPanel1 = oExBar:AddPanel( "One", "people" )
oPanel1:lSpecial = .T.
oPanel1:AddLink( "First item", bClick, "additem" )
oPanel1:AddLink( "Second item", bClick, "copy" )
oPanel2 = oExBar:AddPanel( "Two", "case" )
oPanel2:AddLink( "First item", bClick, "adddbf" )
oPanel2:AddLink( "Second item", bClick, "delete" )
oPanel2:AddLink( "Third item", bClick, "envelope" )
oPanel2:AddLink( "Fourth item", bClick, "envelope" )
oPanel3 = oExBar:AddPanel( "Three", "graphics" )
oPanel3:AddLink( "First item", bClick, "adddbf" )
oPanel4 = oExBar:AddPanel( "Four" )
oPanel4:AddLink( "First item", bClick, "copy" )
oPanel4:AddLink( "Second item", bClick, "additem" )
return nil
it run ok the horizontal splitter run ok but often the tabs control
How YOU explain it ?
Re: To Antonio and all Simply Test ExplorerBar two browse, tab
Posted: Thu Aug 19, 2010 9:52 pm
by Silvio
Now I made a test with my system and with some helps of test of
Daniel I resolved it
Thank to Daniel and James
Re: To Antonio and all Simply Test ExplorerBar RESOLVED!
Posted: Fri Aug 20, 2010 11:37 am
by Otto
Dear Silvio,
It is so kind of you that you always ask for help and then never post what you find out.
Best regards,
Otto
Re: To Antonio and all Simply Test ExplorerBar RESOLVED!
Posted: Fri Aug 20, 2010 1:58 pm
by Uwe.Diemer
Ja so is er halt
Why Silvio are u using the computer of Mda Solution
A good "Friend" of you ?
Re: To Antonio and all Simply Test ExplorerBar RESOLVED!
Posted: Fri Aug 20, 2010 2:05 pm
by Armando
Friends:
As usualy !.
Regards
Re: To Antonio and all Simply Test ExplorerBar RESOLVED!
Posted: Fri Aug 20, 2010 3:26 pm
by Silvio
Uwe,
I 'm working for Mda Solution , It is' a criminal offense ?
Antonio Know this situation .
Otto,
I made the same of Daniel sources ( with 3 panels second solution ) ,
I must re pubblish the sources ?
Re: To Antonio and all Simply Test ExplorerBar RESOLVED!
Posted: Fri Aug 20, 2010 3:31 pm
by Uwe.Diemer
I have glasses i can read without Bold Font
Re: To Antonio and all Simply Test ExplorerBar RESOLVED!
Posted: Fri Aug 20, 2010 3:34 pm
by andresreyes_mzt
Otto,
I'm agree with you
Will be great if silvio shares his solution, but it's not her obligation
Uwe.Diemer,
It's not our business, Who is using somebody's computer, Who are their good "friends".
Including if you have any personal issue with Silvio, It's not our business.
Regards.