Menu.... ha habilitado....
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
Menu.... ha habilitado....
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]
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]
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
este es lo que he probado..
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.
Code: Select all
#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)
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.
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
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.
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.
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
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:
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
case nMsg == WM_INITMENUPOPUP
return ::InitMenuPopup( nWParam, nLoWord( nLParam ), nHiWord( nLParam ) != 0 )
- Marco A. Delgado
- Posts: 126
- Joined: Fri Oct 07, 2005 4:20 pm
- Location: Veracruz, México
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
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.
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.