Page 1 of 1

Problema con toolbar con FWH 26.03

Posted: Mon Aug 24, 2026 3:57 pm
by TecniSoftware

Me acabo de encontrar que compilando este codigo con la FWH 26.03, directamente no aparece la toolbar, mientras que compilado con FWH 25.04.2 funcionaba ok
Los recursos no importan porque los botones deberian aparecer igual, de hecho, la version de FWH anterior, muestra todo perfectamente.

El codigo es simple, lo generó una ia:

Code: Select all | Expand

#include "FiveWin.ch"
#include "XBrowse.ch"

FUNCTION Main()

   LOCAL oWndMain
   LOCAL oMenu

   MENU oMenu

  MENUITEM "&Archivo"

  MENU
     MENUITEM "&Salir" ;
        ACTION oWndMain:End()
  ENDMENU

  MENUITEM "&Ejemplos"

  MENU
     MENUITEM "&Abrir MDIChild" ;
        ACTION VentanaPrueba( oWndMain )
  ENDMENU

   ENDMENU

   DEFINE WINDOW oWndMain ;
      TITLE "Prueba MDI + Toolbar + XBrowse" ;
      MDI ;
      MENU oMenu

   ACTIVATE WINDOW oWndMain ;
      MAXIMIZED

RETURN NIL


// ----------------------------------------------------------------------
// Ventana MDI Child
// ----------------------------------------------------------------------

FUNCTION VentanaPrueba( oWndMain )

   LOCAL oWndChild
   LOCAL oBar
   LOCAL oBrw
   LOCAL oImgList
   LOCAL aDatos

   LOCAL oBmpNuevo
   LOCAL oBmpEditar
   LOCAL oBmpBorrar
   LOCAL oBmpSalir

   // -------------------------------------------------------------------
   // Array de prueba
   // -------------------------------------------------------------------

   aDatos := { ;
      { 1001, "Juan Pérez",      "Buenos Aires", 12500.50 }, ;
      { 1002, "María Gómez",     "Córdoba",        8300.00 }, ;
      { 1003, "Carlos López",    "Rosario",       15250.75 }, ;
      { 1004, "Ana Martínez",    "Mendoza",        9450.20 }, ;
      { 1005, "Pedro Sánchez",   "Neuquén",       18700.00 }, ;
      { 1006, "Laura Fernández", "La Plata",      11300.25 }, ;
      { 1007, "José Rodríguez",  "Quilmes",        7800.00 }, ;
      { 1008, "Marta González",  "Bernal",        22100.80 }  ;
   }

   // -------------------------------------------------------------------
   // MDIChild
   // -------------------------------------------------------------------

   DEFINE WINDOW oWndChild ;
      MDICHILD ;
      OF oWndMain ;
      TITLE "Clientes" ;
      FROM 30, 30 ;
      TO 550, 950 ;
      PIXEL

   // -------------------------------------------------------------------
   // Bitmaps
   //
   // Estos nombres deben existir en tu archivo .RC:
   //
   // NUEVO
   // EDITAR
   // BORRAR
   // SALIR
   //
   // -------------------------------------------------------------------

   DEFINE BITMAP oBmpNuevo  RESOURCE "NUEVO"
   DEFINE BITMAP oBmpEditar RESOURCE "EDITAR"
   DEFINE BITMAP oBmpBorrar RESOURCE "BORRAR"
   DEFINE BITMAP oBmpSalir  RESOURCE "SALIR"

   // -------------------------------------------------------------------
   // ImageList
   // -------------------------------------------------------------------

   oImgList := TImageList():New( 24, 24 )

   oImgList:AddMasked( oBmpNuevo,  RGB( 255, 0, 255 ) )
   oImgList:AddMasked( oBmpEditar, RGB( 255, 0, 255 ) )
   oImgList:AddMasked( oBmpBorrar, RGB( 255, 0, 255 ) )
   oImgList:AddMasked( oBmpSalir,  RGB( 255, 0, 255 ) )

   // -------------------------------------------------------------------
   // Toolbar
   // -------------------------------------------------------------------

   oBar := TToolBar():New( oWndChild, 32, 32, oImgList )

   oBar:AddButton( ;
      { || MsgInfo( "Nuevo registro", "Toolbar" ) }, ;
      "Nuevo", ;
      "Nuevo registro" )

   oBar:AddButton( ;
      { || MsgInfo( "Editar registro", "Toolbar" ) }, ;
      "Editar", ;
      "Editar registro" )

   oBar:AddButton( ;
      { || MsgInfo( "Borrar registro", "Toolbar" ) }, ;
      "Borrar", ;
      "Borrar registro" )

   oBar:AddSeparator()

   oBar:AddButton( ;
      { || oWndChild:End() }, ;
      "Salir", ;
      "Cerrar ventana" )

   // -------------------------------------------------------------------
   // XBrowse
   // -------------------------------------------------------------------

   @ 10, 0 XBROWSE oBrw ;
      OF oWndChild ;
      ARRAY aDatos ;
      AUTOCOLS ;
      PIXEL

   oBrw:aCols[ 1 ]:cHeader := "Código"
   oBrw:aCols[ 2 ]:cHeader := "Nombre"
   oBrw:aCols[ 3 ]:cHeader := "Localidad"
   oBrw:aCols[ 4 ]:cHeader := "Importe"

   oBrw:aCols[ 1 ]:nWidth := 80
   oBrw:aCols[ 2 ]:nWidth := 220
   oBrw:aCols[ 3 ]:nWidth := 160
   oBrw:aCols[ 4 ]:nWidth := 120

   oBrw:aCols[ 4 ]:nDataStrAlign := AL_RIGHT

   oBrw:nMarqueeStyle := MARQSTYLE_HIGHLROW

   oBrw:CreateFromCode()

   // -------------------------------------------------------------------
   // CLAVE DEL RESIZE
   //
   // FiveWin considera al browse como área cliente de la MDIChild.
   // Al redimensionar la ventana, el browse se adapta automáticamente.
   //
   // La Toolbar ya ocupa la parte superior.
   // -------------------------------------------------------------------

   oWndChild:oClient := oBrw

   // -------------------------------------------------------------------
   // Activar
   // -------------------------------------------------------------------

   ACTIVATE WINDOW oWndChild

RETURN NIL

Muchos saludos


Re: Problema con toolbar con FWH 26.03

Posted: Mon Aug 24, 2026 5:09 pm
by Antonio Linares

Falta:

oWndChild:oTop := oBar
oBar:lVisible := .T.


Re: Problema con toolbar con FWH 26.03

Posted: Mon Aug 24, 2026 6:02 pm
by TecniSoftware
Antonio Linares wrote: Mon Aug 24, 2026 5:09 pm

Falta:

oWndChild:oTop := oBar
oBar:lVisible := .T.

Con la version anterior de fwh no tenia problema y la ia me estaba haciendo ir de un lado para otro.

Gracias Antonio!