FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour en FW existe un boton con un list?
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM

en FW existe un boton con un list?

Posted: Sat Sep 03, 2016 03:05 PM

Hola.

Existe en fW un boton que en la parte derecha tenga una flecha que al tocar despliegue una lista de, por ejemplo, items?

gracias.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1344
Joined: Wed Nov 16, 2005 09:14 PM

Re: en FW existe un boton con un list?

Posted: Sat Sep 03, 2016 07:33 PM
Puedes usar el GET con ACTION. En la funcion que llame el action puedes tener un browse que muestre los items y los elija.
Code (fw): Select all Collapse
#include "FiveWin.ch" 
#include "xbrowse.ch" 

function main() 
LOCAL oDlg, oGet, oBot, cDato := SPACE(30)
    DEFINE DIALOG oDlg TITLE "Boton con ACTION" FROM 05,15 TO 25,90
    oDlg:lHelpIcon := .f.
    @ 07, 05 SAY "Completar dato:" OF oDlg  PIXEL SIZE 60,20 RIGHT
    @ 05, 70 GET oGet VAR cDato    OF oDlg  PIXEL SIZE 60,20 CUEBANNER "Escriba el Dato";
      ACTION  (oGet:cText := Buscar()) BITMAP "C:\fwh16\bitmaps\16x16\darrow.bmp"
    @ 50, 70 BUTTON oBot PROMPT "&Ok" OF oDlg SIZE 30,10 ACTION oDlg:End()  PIXEL  
    ACTIVATE DIALOG oDlg CENTER 
RETURN nil

STATIC FUNCTION Buscar()
LOCAL aItems := {"Opcion 1","Opcion 2","Opcion 3"}, oDlg, oBrw, oBot
DEFINE DIALOG oDlg TITLE "Buscar " FROM 09,15 TO 28,60 
   oDlg:lHelpIcon := .f.
   @ 01,01 XBROWSE oBrw ARRAY aItems SIZE 100,140 OF oDlg PIXEL ;
       COLUMNS 1;
       HEADERS "Opciones"
   oBrw:CreateFromCode()
   @10,150 BUTTON oBot PROMPT "&Ok" OF oDlg SIZE 30,10 ACTION oDlg:End() PIXEL
   ACTIVATE DIALOG oDlg CENTER 
RETURN aItems[oBrw:nRowSel]
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM

Re: en FW existe un boton con un list?

Posted: Sat Sep 03, 2016 08:32 PM
goosfancito wrote:Hola.

Existe en fW un boton que en la parte derecha tenga una flecha que al tocar despliegue una lista de, por ejemplo, items?

gracias.


Porque no usar el combobox/dbcombo.? ...saludos... :-)
Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM

Re: en FW existe un boton con un list?

Posted: Sat Sep 03, 2016 08:35 PM

hola. Si podría, pero quiero ver si puedo utilizarlo de otra forma,
por eso me gustaría poder tener un boton que este como partido en dos.

Como este boton, que justamente es lo que quiero hacer, cuando presiono la flecha que aparezca una lista. un menu.

https://drive.google.com/file/d/0B7Y1b0 ... sp=sharing
gracias.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM

Re: en FW existe un boton con un list?

Posted: Sat Sep 03, 2016 08:47 PM
goosfancito wrote:hola. Si podría, pero quiero ver si puedo utilizarlo de otra forma,
por eso me gustaría poder tener un boton que este como partido en dos.

Como este boton, que justamente es lo que quiero hacer, cuando presiono la flecha que aparezca una lista. un menu.
https://drive.google.com/file/d/0B7Y1b0 ... sp=sharing
gracias.

Creo la mejor opcion es la q te da CMSOFT, sino colocas un boton normal pequeño 16x16 al lado del GET, pero creo es innecesario a menos que quieras tener independencia de las acciones de ambos recursos, saludos... :-)
Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM

Re: en FW existe un boton con un list?

Posted: Sat Sep 03, 2016 09:54 PM

no lo coloco porque quiero ver si puedo hacerlo con un button.

gracias.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM

Re: en FW existe un boton con un list?

Posted: Sun Sep 04, 2016 02:05 AM

No se si en los samples de la TRibbon vi algo como lo que quieres, un boton con un despliegue, saludos... :shock:

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM

Re: en FW existe un boton con un list?

Posted: Sun Sep 04, 2016 10:14 AM
Gustavo,

Puedes usar la función PopupBrowse() de FWH, pero sólo está disponible a partir de la versión 15.11

Code (fw): Select all Collapse
   @   4, 4 GET oGetClient VAR oRec:Client OF oDlg ;
      ACTION ( cClient := Clients->( PopupBrowse( oWndClients:oClient:oRs, oGetClient ) ),;
               If( cClient != nil, oRec:Client := cClient,) )


regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM

Re: en FW existe un boton con un list?

Posted: Sun Sep 04, 2016 02:28 PM

a ok.
voy a tratar en algun tiempo que tenga de modificar la clase tbutton para que pueda hacer lo que necesito.

gracias.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 479
Joined: Fri Feb 16, 2007 10:29 AM

Re: en FW existe un boton con un list?

Posted: Wed Sep 07, 2016 10:18 AM
Buenas:

Lo que buscas es exactamente esto:

Code (fw): Select all Collapse
....
  redefine buttonbmp obtn[1] bitmap 'nuevo' prompt CRLF+CRLF+CRLF+'Nuevo' TEXTbottom id 101 of odlg1 action menubaY(obtn[1],sectorC) ;    obtn[1]:ctooltip:= 'Nueva factura'
.....


funct menubaY( obot1, sectorC )
   Local oMenu, aRect
   aRect := GetClientRect( obot1:hWnd )
   menu omenu1 popup 2007
     menuitem '&Nueva factura' action  (iif(sectorC='servicio',newfactu(.t.,sectorC,'Facturas'),newfactura(.t.,,,'factura','Facturas',.t.,sectorC)),gesfactu->(OrdSetFocus('factuf')),gesfactu->(DbSetOrder(oTabs:noption)),lisfa:refresh(),lisfa:SetFocus())
     menuitem '&Duplicar '+iif(versionOPC() .or. versionMUL(),'','(SOLO para versión ELITE)') action dupliF() when iif(versionOPC() .or. versionMUL(),.t.,.f.)
     separator
     menuitem 'Cancelar' action omenu1:end()
   endmenu
   ACTIVATE POPUP omenu1 AT aRect[ 3 ] + 1, aRect[ 2 ] OF oBot1
return
Posts: 159
Joined: Wed Mar 28, 2007 01:19 PM

Re: en FW existe un boton con un list?

Posted: Wed Sep 07, 2016 05:51 PM
Amigos, modo simples:

Code (fw): Select all Collapse
   DEFINE DIALOG oDlg...
   ...
   ACTIVATE DIALOG oDlg ON INIT DlgSetup(oDlg)
   ...
Function DlgSetup(oDlg)
local oBar, oMnu, oBB

   DEFINE BUTTONBAR oBar  SIZE 35, 35  OF oDlg
   oBar:bRClicked:=oBar:bLClicked:={|| nil }
   ...
   MENU oMnu POPUP
        MENUITEM "Pesquisa 1"  ACTION DoPesq1()
        SEPARATOR  
        MENUITEM "Pesquisa 2"  ACTION DoPesq2()
   ENDMENU   
*
   DEFINE BUTTON oBB  OF oBar  RESOURCE "FIND"  MENU oMnu  NOBORDER ;
          TOOLTIP "Pesquisa"   ACTION oBB:oPopup:Activate( oBB:nBottom, oBB:nLeft, oBar, .f. )
   ...

Saludos, Euclides

Continue the discussion