a question MDI

Re: a question MDI

Postby Silvio.Falconi » Tue Jan 11, 2022 11:05 am

Application
===========
Path and name: C:\work\Errori\testMdi\testmdi.Exe (32 bits)
Size: 4,605,440 bytes
Compiler version: Harbour 3.2.0dev (r1904111533)
FiveWin version: FWH 21.11
C compiler version: Borland/Embarcadero C++ 7.0 (32-bit)
Windows version: 6.1, Build 7601 Service Pack 1

Time from start: 0 hours 0 mins 3 secs
Error occurred at: 01/11/22, 12:05:27
Error description: Error BASE/1004 No exported method: EVAL
Args:
[ 1] = A {.T.} length: 1
[ 2] = N 2
[ 3] = N 746
[ 4] = N 638
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)
I use : FiveWin for Harbour November 2023 - January 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
User avatar
Silvio.Falconi
 
Posts: 7063
Joined: Thu Oct 18, 2012 7:17 pm

Re: a question MDI

Postby cmsoft » Tue Jan 11, 2022 1:57 pm

Code: Select all  Expand view  RUN
Function test1(oWnd)
   Local oBrw,oBar, oWndClients, oMsgBar

   use customer

   DEFINE WINDOW oWndClients MDICHILD OF oWnd TITLE "Clients"

   @ 2, 0 XBROWSE oBrw OF oWndClients LINES AUTOSORT ;
         AUTOCOLS DATASOURCE "Customer" NOBORDER
      oBrw:CreateFromCode()
      oBrw:SetFocus()

      DEFINE BUTTONBAR oBar OF oWndClients 2015 SIZE 70, 60

     oWndClients:oClient = oBrw
     oWndClients:oControl = oBrw

      DEFINE MSGBAR oMsgBar OF oWndClients 2015
    oWndClients :bMoved    := { |nRow, nCol| IF(nCol < 150,oWndClients :Move(150,oWndClients :nTop),.t.) }
    oWndClients :bResized    := {||  IF(oWndClients:nLeft < 150 ,oWndClients :Move(150,oWndClients :nTop),.t.) }
    ACTIVATE WINDOW oWndClients MAXIMIZED ;
         VALID ( oWndClients := nil, .T. )
    return nil

Me faltaron los ||
User avatar
cmsoft
 
Posts: 1290
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: a question MDI

Postby Silvio.Falconi » Tue Jan 11, 2022 10:54 pm

cmsoft wrote:
Code: Select all  Expand view  RUN
Function test1(oWnd)
   Local oBrw,oBar, oWndClients, oMsgBar

   use customer

   DEFINE WINDOW oWndClients MDICHILD OF oWnd TITLE "Clients"

   @ 2, 0 XBROWSE oBrw OF oWndClients LINES AUTOSORT ;
         AUTOCOLS DATASOURCE "Customer" NOBORDER
      oBrw:CreateFromCode()
      oBrw:SetFocus()

      DEFINE BUTTONBAR oBar OF oWndClients 2015 SIZE 70, 60

     oWndClients:oClient = oBrw
     oWndClients:oControl = oBrw

      DEFINE MSGBAR oMsgBar OF oWndClients 2015
    oWndClients :bMoved    := { |nRow, nCol| IF(nCol < 150,oWndClients :Move(150,oWndClients :nTop),.t.) }
    oWndClients :bResized    := {||  IF(oWndClients:nLeft < 150 ,oWndClients :Move(150,oWndClients :nTop),.t.) }
    ACTIVATE WINDOW oWndClients MAXIMIZED ;
         VALID ( oWndClients := nil, .T. )
    return nil

Me faltaron los ||



Cristobal have create a test run ok
Code: Select all  Expand view  RUN
function WindowChild(oWnd)
   local oWndChild
   local oFolder, oSay, oSay1
   local x
   local nPosR  := 0
   local nPosC  := 0

   if Len( oWnd:oWndClient:aWnd ) > 0
      if ( nRow + nHChild ) > oWnd:nHeight
         nRow  := 0
         if ( nCol + Int( nWChild / 2 ) ) > oWnd:nWidth
            nCol := 0
         else
            nCol += Int( nWChild / 2 )
         endif
      else
         nRow  += Int( nHChild / 4 )
      endif
   endif

   DEFINE WINDOW oWndChild MDICHILD OF oWnd ;
      FROM nRow + 1 , nCol TO nHChild, nWChild PIXEL //NOSYSMENU //BRUSH oWndCalend:oBrush  // NOCAPTION

   @ 0, 0 FOLDER oFolder OF oWndChild
   oWndChild:oClient := oFolder
   
   ACTIVATE WINDOW oWndChild ;
      ON INIT oWndChild:cToolTip := oWndChild:cCaption ;
      ON MOVE ( oWndChild:CoorsUpdate(), ;
                if( oWndChild:nLeft < 1, oWndChild:Move( oWndChild:nTop, 0 ), ), ;
                if( oWndChild:nTop  < 2, oWndChild:Move( 1, oWndChild:nLeft ), ) )

return oWndChild
 
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)
I use : FiveWin for Harbour November 2023 - January 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
User avatar
Silvio.Falconi
 
Posts: 7063
Joined: Thu Oct 18, 2012 7:17 pm

Re: a question MDI

Postby cmsoft » Tue Jan 11, 2022 11:26 pm

Excelente!
Me alegro que lo hayas podido resolver
User avatar
cmsoft
 
Posts: 1290
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: a question MDI

Postby cnavarro » Thu Jan 13, 2022 12:51 pm

karinha wrote:
cnavarro wrote:Silvio, use Splitter for this
Look my sample
https://bitbucket.org/fivetech/fivewin- ... estmdi.prg



Mestre Navarro, publique un ejemplo que, cuando se compila, funciona correctamente. ¿Y dónde está ese camión lleno de BitMaps que el programa va a buscar en un directorio infinito? ¿Es posible crear un .RAR y poner a disposición el SOURCE, un .EXE y los BITMAPS de este ejemplo para realizar pruebas? Sea práctico, por favor. Gracias.



Joao, no es posible publicar los bitmaps, pertenecen a microsoft y sólo se pueden utilizar si compilas con Visual Studio
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: 6548
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: a question MDI

Postby karinha » Thu Jan 13, 2022 1:15 pm

cnavarro wrote:
karinha wrote:
cnavarro wrote:Silvio, use Splitter for this
Look my sample
https://bitbucket.org/fivetech/fivewin- ... estmdi.prg



Mestre Navarro, publique un ejemplo que, cuando se compila, funciona correctamente. ¿Y dónde está ese camión lleno de BitMaps que el programa va a buscar en un directorio infinito? ¿Es posible crear un .RAR y poner a disposición el SOURCE, un .EXE y los BITMAPS de este ejemplo para realizar pruebas? Sea práctico, por favor. Gracias.



Joao, no es posible publicar los bitmaps, pertenecen a microsoft y sólo se pueden utilizar si compilas con Visual Studio


Está bien, mi querido maestro. Necesitas aprender a compilar con BORLAND. jajajajajajajajaja, broma, broma, broma.

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

Re: a question MDI

Postby cnavarro » Thu Jan 13, 2022 1:17 pm

https://www.microsoft.com/en-us/downloa ... x?id=35825

Borland sólo para pruebas rápidas :D :D :D :D
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: 6548
Joined: Wed Feb 15, 2012 8:25 pm
Location: España

Re: a question MDI

Postby James Bott » Tue Jan 18, 2022 10:38 pm

Sample using Explorer Bar and MDI windows.

Code: Select all  Expand view  RUN
/*
Purpose : Test ExplorerBar with MDI
Author  : James Bott, jbott@compuserve.com
Company : Intellitech, gointellitech.com
Date    : 09/28/10 13:53:39
Language: Fivewin Harbour/xHarbour
Notes   :

*/



#include "fivewin.ch"
#include "color.ch"

static oWnd1, oWnd2

function main()
   local oWnd, oBar

   define window oWnd title "Test Explorerbar with MDI Windows" MDI

   define buttonbar oBar of oWnd 3d

   oWnd:oLeft:= buildExbar(oWnd)

   activate window oWnd on init Init()

return nil

//---------------------------------------------------------------------------//

Function Init()
   local oBar, oBar2

   define window oWnd1 mdichild ;
     nominimize nosysmenu;
     color CLR_BLACK,CLR_BLUE ;
     of wndMain()
   activate window oWnd1 maximized

   define window oWnd2 mdichild ;
     nominimize nosysmenu;
     color CLR_BLACK,CLR_RED ;
     of wndMain()
   define buttonbar oBar2 of oWnd2 3d
   activate window oWnd2 maximized

return nil

//---------------------------------------------------------------------------//

function buildExbar( oWnd )

   local oExBar, oPanel1

   oExBar = TExplorerBar():New(0,0,150,400,oWnd)

   oPanel1 = oExBar:AddPanel( "One", "c:\fwh\bitmaps\32x32\people.bmp" )
   oPanel1:lSpecial = .T.
   oPanel1:AddLink( "Providers", {|| oWnd1:maximize(), oWnd1:setfocus()}, "c:\fwh\bitmaps\16x16\additem.bmp" )
   oPanel1:AddLink( "Patients", {|| oWnd2:maximize(), oWnd2:setFocus()}, "c:\fwh\bitmaps\16x16\copy.bmp" )

return oExBar

//----------------------------------------------------------------------------//
FWH 18.05/xHarbour 1.2.3/BCC7/Windows 10
User avatar
James Bott
 
Posts: 4840
Joined: Fri Nov 18, 2005 4:52 pm
Location: San Diego, California, USA

Previous

Return to FiveWin for Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 77 guests