FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Problema con ToolBar y TbMenu
Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Problema con ToolBar y TbMenu
Posted: Fri Dec 07, 2007 01:20 PM

Hola,
tengo una toolbar conv arios botones y un tbmenu que despliega un menu al hacer click en la parte de la lista desplegable. Quiero que cuando se hace click sobre el bot贸n me despliegue el mismo menu, pero no hay manera. 驴 Alguien sabe como se hace ?

Saludos,
Jos茅 Luis S谩nchez

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema con ToolBar y TbMenu
Posted: Fri Dec 07, 2007 02:48 PM

Jos茅 Luis,

Aqui est谩 el c贸digo y un ejemplo:

http://fivetechsoft.com/forums/viewtopic.php?t=8609

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 564
Joined: Thu Oct 13, 2005 09:23 AM
Problema con ToolBar y TbMenu
Posted: Fri Dec 07, 2007 04:03 PM

Antonio, con una buttonbar lo tengo hecho. El problema de la toolbar es que no encuentro la manera de pasarle la referencia del objeto bot贸n para luego calcular las coordenadas. En las toolbar, no hay referencia al objeto bot贸n por ningun lado, o eso creo.

Saludos,

Posts: 11
Joined: Wed Jun 20, 2007 09:22 PM
Prueba de esta manera.
Posted: Thu Dec 27, 2007 04:30 PM

DEFINE TBBUTTON OF oToolBar5 ACTION (MEst(oWnd)) TOOLTIP "Informes Estadisticos"
oToolBar5:AddSeparator()
DEFINE TBBUTTON OF oToolBar5 ACTION (MCCC(oWnd)) TOOLTIP "Cuentas Corrientes"
oToolBar5:AddSeparator()
DEFINE TBBUTTON OF oToolBar5 ACTION (MLAF(oWnd)) TOOLTIP "Libro Auxiliar de Facturacion"
oToolBar5:AddSeparator()

------------------------------------------------------------------------------
Function MEst(oMainWnd )
LOCAL oMenu, nRow:=65, nCol:=Menos1, aPos := GetCursorPos()
Local cClrDegrIni,cClrDegrFin
Local cClrSelIni,cClrSelFin,cClrSelTxt,cClrSelBor
Local cClrMenu,cClrMenuTxt
IF _Ancho=768
nCol:=Ltb3+130
ElseIf _Ancho=1024
nCol:=LTB3+Ltb4+44
ENDIF
cClrDegrFin := LightColor(60,getsysColor(2))
cClrDegrIni:= LightColor(230,cClrDegrFin)
cColorPan := LightColor(150,cClrDegrFin)
cClrMenu:= GetSysColor(4) //RGB(224,255,255)
cClrMenuTxt:= CLR_BLACK
cClrSelFin:= RGB(255,238,194)
cClrSelIni:= RGB(255,238,194)
cClrSelTxt:= CLR_BLACK
cClrSelBor:= CLR_BLACK
MENU oMenu POPUP ;
COLORMENU cClrMenu,cClrMenuTxt ;
COLORBMP cClrDegrFin,cClrDegrIni;
COLORSELECT cClrDegrIni,cClrDegrFin,cClrSelTxt;
COLORSEPARATOR cClrSelBor
MenuItem oMIt[1] Prompt "Ventas" Action (TT_SV())
Separator
MenuItem oMIt[2] Prompt "Cliente" Action (EVXC())
Separator
MenuItem oMIt[3] Prompt "Entradas Valorizadas"
Separator
MenuItem oMIt[4] Prompt "Compras por Producto"
Separator
MenuItem oMIt[5] Prompt "Compras por Bloques"
Separator
MenuItem oMIt[6] Prompt "Precios de Compra"
Separator
MenuItem oMIt[7] Prompt "Consolidado I.N.E."
Separator
MenuItem oMIt[8] Prompt "Variaciones de Precio"
Separator
MenuItem oMIt[9] Prompt "Diferencias de PRecio"
EndMenu
ACTIVATE MENU oMenu AT nRow, nCol OF oMainWnd
oMainWnd:Refresh()
RETURN NIL
----------------------------------------------------------------------------
Function MCCC(oMainWnd )
LOCAL oMenu, nRow:=65, nCol:=Menos1, aPos := GetCursorPos()
Local cClrDegrIni,cClrDegrFin
Local cClrSelIni,cClrSelFin,cClrSelTxt,cClrSelBor
Local cClrMenu,cClrMenuTxt
IF _Ancho=768
nCol:=Ltb3+166
ElseIf _Ancho=1024
nCol:=LTB3+Ltb4+81
ENDIF
cClrDegrFin := LightColor(60,getsysColor(2))
cClrDegrIni:= LightColor(230,cClrDegrFin)
cColorPan := LightColor(150,cClrDegrFin)
cClrMenu:= GetSysColor(4) //RGB(224,255,255)
cClrMenuTxt:= CLR_BLACK
cClrSelFin:= RGB(255,238,194)
cClrSelIni:= RGB(255,238,194)
cClrSelTxt:= CLR_BLACK
cClrSelBor:= CLR_BLACK
MENU oMenu POPUP ;
COLORMENU cClrMenu,cClrMenuTxt ;
COLORBMP cClrDegrFin,cClrDegrIni;
COLORSELECT cClrDegrIni,cClrDegrFin,cClrSelTxt;
COLORSEPARATOR cClrSelBor //cClrDegrFin
MenuItem "Cuenta Corriente Individual" Action (Execute[16]:=.T.,Filter_Cta(oWnd,oMenuIt[49],Execute)) When (!Execute[16])
Separator
MenuItem "Cuenta Corriente General" Action (CCGC())
ENDMENU
ACTIVATE MENU oMenu AT nRow, nCol OF oMainWnd
oMainWnd:Refresh()
RETURN NIL
----------------------------------------------------------------------------
Function MLAF(oMainWnd)
LOCAL oMenu, nRow:=65, nCol:=Menos1, aPos := GetCursorPos()
Local cClrDegrIni,cClrDegrFin
Local cClrSelIni,cClrSelFin,cClrSelTxt,cClrSelBor
Local cClrMenu,cClrMenuTxt
IF _Ancho=768
nCol:=Ltb3+202
ElseIf _Ancho=1024
nCol:=LTB3+Ltb4+118
ENDIF
cClrDegrFin := LightColor(60,getsysColor(2))
cClrDegrIni:= LightColor(230,cClrDegrFin)
cColorPan := LightColor(150,cClrDegrFin)
cClrMenu:= GetSysColor(4) //RGB(224,255,255)
cClrMenuTxt:= CLR_BLACK
cClrSelFin:= RGB(255,238,194)
cClrSelIni:= RGB(255,238,194)
cClrSelTxt:= CLR_BLACK
cClrSelBor:= CLR_BLACK
MENU oMenu POPUP ;
COLORMENU cClrMenu,cClrMenuTxt ;
COLORBMP cClrDegrFin,cClrDegrIni;
COLORSELECT cClrDegrIni,cClrDegrFin,cClrSelTxt;
COLORSEPARATOR cClrSelBor
MenuItem oMIt[18] Prompt "Borrador Libro Auxiliar" ACTION (Execute[18]:=.T.,Libro_Auxf(1,oMenuIt[52],Execute,oWnd)) When (!Execute[18])
Separator
MenuItem oMIt[19] Prompt "Original S.I.I." ACTION (Execute[19]:=.T.,Libro_Auxf(2,oMenuIt[53],Execute,oWnd)) When (!Execute[19])
Separator
MenuItem oMIt[20] Prompt "Foliaci贸n de Hojas" ACTION (Execute[20]:=.T.,Libro_Auxf(3,oMenuIt[54],Execute,oWnd)) When (!Execute[20])
EndMenu
ACTIVATE MENU oMenu AT nRow, nCol OF oMainWnd
oMainWnd:Refresh()
RETURN NIL
----------------------------------------------------------------------

Al menos a mi, me funciona bastante bien, s贸lo hayn que jugar con la posici贸n de los botones para darle las coordenadas al men煤.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema con ToolBar y TbMenu
Posted: Thu Dec 27, 2007 06:03 PM

Jos茅 Luis,

Se me hab铆a pasado esta respuesta tuya. Revisa lo que te comenta Leonel y sino buscamos otra forma, gracias!

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1074
Joined: Fri Oct 07, 2005 01:56 PM
Problema con ToolBar y TbMenu
Posted: Thu Dec 27, 2007 09:22 PM
Hola Jose Luis

Revisa este post http://fivetechsoft.com/forums/viewtopic.php?t=5205&start=0&postdays=0&postorder=asc&highlight=

baja el archivo acceso.zip, descomprimelo y luego ejecutalo
dbf\wcta.exe ahi esta como hacerlo..

Espero que te sirva
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
Posts: 11
Joined: Wed Jun 20, 2007 09:22 PM

Continue the discussion