Menu.... ha habilitado....

Menu.... ha habilitado....

Postby Marco A. Delgado » Mon Jan 16, 2006 6:49 pm

Hola...

tengo un menu.... que hago en una barra de tsbutton...pero en un submenu no lo pinta como desabilitado (obviamente no ejecuta la accion) pero se ve algo....raro....

alguien...sabe..porke...

Saludos

Marco A. Delgado.

[img][img]http://img17.imageshack.us/img17/8913/menus7ob.jpg[/img][/img]
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby Antonio Linares » Mon Jan 16, 2006 6:56 pm

Marco,

No es el menu estandard de FWH, si ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42126
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Marco A. Delgado » Mon Jan 16, 2006 9:30 pm

no entiendo tu respuesta Antonio.

me dices que el menu que utilizo pertenece a la clase tsbutton

Saludos

Marco A. Delgado.
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby Marco A. Delgado » Mon Jan 16, 2006 11:14 pm

gracias.....por tu respuesta Antonio


cheque los ejemplos de fwh y todos funcionan correctamente, seguire probando...


Saludos

Marco A. Delgado.
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby Antonio Linares » Tue Jan 17, 2006 4:16 am

Marco,

Me refiero a si estás usando los menús de FWH ó estás usando otros de terceros.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42126
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Marco A. Delgado » Tue Jan 17, 2006 2:29 pm

Antonio,

Estoy utilizando los de FWH


Saludos

Marco A. Delgado.
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby leandro » Tue Jan 17, 2006 2:40 pm

Perdon la intromicion, pero sera que me pueden indicar cual es el nombre del ejemplo para revisarlo.
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1676
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Postby Antonio Linares » Tue Jan 17, 2006 7:15 pm

Marco,

Podrias por favor proporcionar un ejemplo pequeño y autocontenido, que use clases estandard de FWH y que reproduzca el problema ? gracias.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42126
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Marco A. Delgado » Wed Jan 18, 2006 3:47 am

este es lo que he probado..
Code: Select all  Expand view  RUN
#Define COLOR_BTNFACE 15
#Define CLR_NBLUE  nRGB( 128, 128, 192)

#Include "FiveWin.ch"

Static oWndPrinc, oOut, oBtn[2]
Static cEmpresa, oFont
***************************
Function Main()
  Local oIcon, oCur, oBar, cUsuario
  Local oSpl, oUsuario, oBrush, oSay, oEmpresa
  DEFAULT cEmpresa := "Transporte Urbano de Poza Rica, S.A. de C.V."
  DEFAULT cUsuario := ""

  REQUEST DBFCDX
  RDDSETDEFAULT("DBFCDX")
  SET CENTURY ON
  SET DATE BRITISH
  SET DELETE ON
  SET EPOCH TO 1989
  SetHandleCount( 80 )
  Set3dLook(.T.)

  DEFINE ICON oIcon RESOURCE "A"
  DEFINE CURSOR oCur RESOURCE "Hand"
  DEFINE BRUSH oBrush RESOURCE "Brush2"
  DEFINE FONT oFont  NAME "Arial" SIZE 0, -11

  DEFINE WINDOW oWndPrinc ;
         TITLE "Sistema Administrativo para Transporte de Pasajeros para Windows" ;
         COLOR CLR_BLACK, GetSysColor(15)-RGB(30,30,30) ;
         MENU CreaMenu() ;
         ICON oIcon

         oWndPrinc:SetFont( oFont )

         DEFINE BUTTONBAR oBar 3DLOOK OF oWndPrinc SIZE 35, 35
                oBar:bLClicked := {|| 0 }
                oBar:bRClicked := {|| 0 }

                DEFINE BUTTON oBtn[1] OF oBar    ;
                       RESOURCE "EXIT","EXIT"   ;
                       ACTION oWndPrinc:End()       ;
                       MESSAGE " Salir del Sistema" ;
                       TOOLTIP "Salir del Sistema"  ;
                       NOBORDER

                DEFINE BUTTON oBtn[2] OF oBar ;
                       RESOURCE "PRINTER"     ;
                       ACTION MenuPop( oBtn[2] )  ;
                       FONT oWndPrinc:oFont          ;
                       MESSAGE " Reportes del Sistema" ;
                       NOBORDER            ;
                       GROUP

         SET MESSAGE OF oWndPrinc TO " Prueba " CENTER NOINSET

                    oWndPrinc:oMsgBar:DateOn()

  ACTIVATE WINDOW oWndPrinc          ;
           VALID (oFont:End(), .T. ) ;
           MAXIMIZED


Return Nil
*******************
Function CreaMenu()
  Local oMenu
  Local lEnable := .F.

        MENU oMenu
            MenuItem "Primero"
              Menu
                MenuItem "Acerca1"
                  Menu
                    MenuItem "Punto1"
                    MenuItem "Punto2"
                      Menu
                        MenuItem "Parte1"
                        MenuItem "Parte2"
                        MenuItem "Parte3" When lEnable
                      EndMenu
                    MenuItem "Punto3" When lEnable
                  EndMenu
                MenuItem "Acerca2"
                MenuItem "Acerca3" When lEnable
              EndMenu
            MenuItem "Segundo"
        EndMenu

Return(oMenu)
*******************************************
Static Function MenuPop( oBtn )
  Local oMenu, aRect
  Local tUsuario
  Local lEnable := .F.

    MENU oMenu POPUP
       MenuItem "Informe de &Recaudaciones Diarias"
       SEPARATOR
       MenuItem "Deducciones a &Operadores" ;
              RESOURCE "Oper16"
              Menu
                 MenuItem "&Detallado (Ordenado por Operador)" When lEnable
                 MenuItem "&Acumulado (Ordenado por Operador)" When lEnable
                 MenuItem "&Individual"
              EndMenu
       MenuItem "Informe de &Pensiones a Operadores"

       SEPARATOR
       MenuItem "&Ingresos"
           Menu
              MenuItem "Mensual por &Unidad" When lEnable
                  Menu
                     MenuItem "&Detallado (Ordenado por Unidad)"
                     MenuItem "&Acumulado (Ordenado por Ingresos)"
                     MenuItem "por &Unidad (en Detalle)"
                  EndMenu
              MenuItem "Mensual por &Operador"  ;
                       RESOURCE "Oper16" When lEnable
                  Menu
                     MenuItem "&Detallado (Ordenado por Operador)"
                     MenuItem "&Acumulado (Ordenado por Ingresos)"
                     MenuItem "&Individual (en Detalle)"
                  EndMenu
              MenuItem "Mensual Por &Empresas" When lEnable
              MenuItem "Mensual Por &Bases"
              SEPARATOR
              MenuItem "Anual por &Unidad"
              MenuItem "Anual por &Operador" ;
                       RESOURCE "Oper16"
                  Menu
                     MenuItem "&Global"
                     MenuItem "&Individual"
                  EndMenu
              MenuItem "Anual por &Empresas" When lEnable
              MenuItem "Anual por &Bases"
           EndMenu
       SEPARATOR
       MenuItem "&Generacion de Disco de Entregas" When lEnable
    ENDMENU

    ACTIVATE POPUP oMenu AT 10 , 0 OF oBtn

Return(Nil)


y sigo con el mismo problema, en los menus normales de una ventana no hay problema, pero dependiendo de una barra de herramientas el resultado es esto.

Prueba en ventana principal:
[img][img]http://img371.imageshack.us/img371/2724/menua7mb.jpg[/img][/img]

Prueba en una barra de la ventana principal

[img][img]http://img371.imageshack.us/img371/7351/menub4ab.jpg[/img][/img]

[img][img]http://img371.imageshack.us/img371/1791/menuc9nu.jpg[/img][/img]

Antonio espero y esto te guie, gracias...

Saludos

Marco A. Delgado.
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby Antonio Linares » Wed Jan 18, 2006 8:32 am

Marco,

Por favor prueba este cambio y dime si ya se ve bien (aunque estará en una posición distinta en la pantalla):

ACTIVATE POPUP oMenu AT 10 , 0 OF oBtn:oWnd:oWnd
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42126
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Marco A. Delgado » Wed Jan 18, 2006 2:47 pm

Funciono..

Muchas Gracias.... pero a que se debe (claro si se puede saber)

[img][img]http://img371.imageshack.us/img371/4941/menud6yv.jpg[/img][/img]

[img][img]http://img371.imageshack.us/img371/3176/menue7kz.jpg[/img][/img]

Pero sigue sin funcionar con tsbutton :(

Saludos
Marco A. Delgado.
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby Marco A. Delgado » Wed Jan 18, 2006 4:25 pm

ok....funciono Antonio pero....

el menu se mueve demasiado, no queda debajo del botton que es donde lo requiero, tambien hice pruebas con tsbutton y el resultado es el mismo se mueve incluso si pongo otro :oWnd se pasa hasta la ventana principal.

Alguna sugerencia

Saludos

Marco A. Delgado.
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby Antonio Linares » Wed Jan 18, 2006 8:10 pm

Marco,

El problema se debe a que ese control no está procesando correctamente el mensaje WM_INITMENUPOPUP.

Puedes solucionarlo añadiendo estas líneas al Método HandleEvent() de ese control:

Code: Select all  Expand view  RUN
      case nMsg == WM_INITMENUPOPUP
           return ::InitMenuPopup( nWParam, nLoWord( nLParam ), nHiWord( nLParam ) != 0 )
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42126
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Postby Marco A. Delgado » Wed Jan 18, 2006 9:43 pm

ok...gracias...lo checo

solo una pregunta Antonio, como le hago para que el menu (en el ejemplo expuesto) me aparezca debajo del botton (como debe de ser).

Saludos

Marco A. Delgado.
User avatar
Marco A. Delgado
 
Posts: 126
Joined: Fri Oct 07, 2005 4:20 pm
Location: Veracruz, México

Postby Antonio Linares » Thu Jan 19, 2006 2:31 am

Marco,

Las coordenadas que tú usabas son relativas al botón. Ahora habría que convertirlas en relativas a la ventana. Se haría así:

local aPos := { 0, 10 }

aPos = ClientToScreen( oBtn:hWnd, aPos )
aPos = ScreenToClient( oWnd:hWnd, aPos )

y los valores que ahora tiene aPos deberían ser los correctos, y relativos a la ventana principal.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42126
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Next

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 76 guests